mysql必知必会
SELECT 语句SQL语句是由简单的英语单词构成的。这些单词称为关键字,每个SQL语句都是由一个或多个关键字构成的。大概,最经常使用的SQL语句就是 SELECT 语句了。它的用途是从一个或多个表中检索信息。为了使用 SELECT 检索表数据,必须至少给出两条信息——想选择什么,以及从什么地方选择。检...
2024-01-10mysql必知必会创建高级联结
使用表别名使用别名引用被检索的表列别名除了用于列名和计算字段外,SQL还允许给表名起别名。这样做有两个主要理由:缩短SQL语句;允许在单条 SELECT 语句中多次使用相同的表。可以看到, FROM 子句中3个表全都具有别名。 customers AS c建立 c 作为 customers 的别名,等等。这使得能使用省写的 c ...
2024-01-10mysql的一些知识点
单表优化:考虑使用ref(使用了非唯一索引),或range(使用了索引) index 是遍历了索引后进行回表遍历 all 直接查全表 extra不要有using filesort(有第二次查询,一般伴随着order by), 和using where(表示需要进行回表操作) using temporar (已经有表了,...
2024-01-10面试必问之mysql基础
mysql存储引擎如何选择mysql存储引擎先得了解下各个存储引擎区别功能MylSAMMEMORYInnoDBArchive功能MylSAMMEMORYInnoDBArchive存储限制256TBRAM64TBNone支持事务NoNoYesNo支持全文索引YesNoNoNo支持树索引YesYesYesNo支持哈希索引NoYesNoNo支持数据缓存NoN/AYesNo支持外键NoNoYesNo可...
2024-01-10SQL必知必会
声明:全文来源《mysql SQL必知必会(第3版)》第一章 了解SQL1.1 数据库基础 数据库(database)保存有组织的数据的容器 表(table)某种特定类型数据的结构化清单。数据库中的每个表都有一个用来标识自己的名字。此名字是唯一的。 模式(schema)...
2024-01-10java必学必会之equals方法
一、equals方法介绍1.1.通过下面的例子掌握equals的用法package cn.galc.test;public class TestEquals { public static void main(String[] args) { /** * 这里使用构造方法Cat()在堆内存里面new出了两只猫, * 这两只猫的color,weight,height都是一样的, * 但c1和c2却永远不会相等,这是因为c1和c2分别为堆内存里...
2024-01-10MySQL必知必会第十九章
第十九章--插入数据 1。插入数据: insert into customers values(NULL, "XXX","XXX", "XXX","XXX", "XXX","XXX", "XXX","XXX",NULL, NULL); 没有输出 INSERT语句一般不会产生输出. 各个列必须以它们在表定义中出现的 次序填充。 第一列cust_id也为NULL。这是因为每次插入一个新行时,该 列由MySQL自动增量。 2.编...
2024-01-10MySQL必知必会第二十一章
3.删除数据:delete from customers where cust_id=10006; 4.删除某列:可以使用update 把该列置为NULL; 5.删除表的内容而不是表: DELETE语句从表中删除行,甚至是 删除表中所有行。但是,DELETE不删除表本身。 6.想从表中删除所有行,可使用TRUNCATE TABLE语句,它完成相同的工作,但速度更 快(TRUNCATE实际是删除原来的...
2024-01-10MySQL必知必会第二十四章
3.保持每个数据库的触发器名唯一 4.触发器用CREATE TRIGGER语句创建 例如: create trigger newproduct after insert on products for each row select "Prodcut added"; 5.仅支持表: 只有表才支持触发器,视图不支持 6.每个表最多支持6个触发器, 单一触发器不能与多个事件或多个表关联。 7.触发器失败: 如果BEFORE触发器失败...
2024-01-10Mysql必知必会挑战题和一些乱七八糟东西 [数据库教程]
SQLsql语句执行顺序(8) SELECT (9)DISTINCT<select_list>(1) FROM <left_table>(3) <join_type> JOIN <right_table>(2) ON <join_condition>(4) WHERE <where_condition>(5) GROUP BY <group_by_list>(6) WITH {CUBE|ROLLUP}(7) HAVING <having_condition>(10) ORDER BY <or...
2024-01-10Mysql中的三类锁,你知道吗?
导读正所谓有人(锁)的地方就有江湖(事务),人在江湖飘,怎能一无所知?今天来细说一下Mysql中的三类锁,分别是全局锁、表级锁、行级锁。文章首发于作者公众号【码猿技术专栏】,原创不易,喜欢的点个赞关注一下,谢谢!!!全局锁全局锁简单的说就是锁住整个数据库实例,命令是Flush ...
2024-01-10MySQL必知必会第十章计算字段
第十章--计算字段 1.字段:字段(field) 基本上与列(column)的意思相同,经常互换使用,不过数据库列一般称为列,而术语字段通常用在计算字段的 连接上。 2.拼接字段:将值联结到一起构成单个值。在MySQL的SELECT语句中,可使用Concat()函数来拼接两个列。 select Concat(prod_names,"(",prod_id, ")") from products ...
2024-01-10MySQL必知必会第五章~第八章
第六章--过滤数据 1. 在SELECT语句中,数据根据WHERE子句中指定的搜索条件进行过滤, WHERE子句在表名(FROM子句)之后给出 例如:select prod_names, prod_id, prod_price from products where prod_price=2.5; WHERE子句的位置 在同时使用ORDERBY和WHERE子句时,应 该让ORDER BY位于WHERE之后,否则将会产生错误 2. WHERE子句操作...
2024-01-10MySQL必知必会第一章了解SQL
1.什么是数据库 数据库(database) 保存有组织的数据的容器(通常是一个文 件或一组文件)。 数据库软件应称为DBMS(数据库管理系统) 表是一种结构化的文件,可用 来存储某种特定类型的数据。 模式(schema) 关于数据库和表的布局及特性的信息。 列(column) 表中的一个字段。所有表都...
2024-01-10MySQL必知必会120章读书笔记
MySQL备忘目录目录使用MySQL检索数据排序检索数据过滤数据数据过滤用通配符进行过滤用正则表达式进行搜索创建计算字段使用数据处理函数数值处理函数汇总数据分组数据使用子查询作为计算字段使用子查询联结表创建高级联结组合查询全文本搜索插入数据更新和删除数据使用MySQLmysql -u<usr> -p -h<h...
2024-01-10Mysql相关知识总结持续更新~~~
2019-12-11对varchar类型排序问题的解决在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varchar类型排序问题如何解决。现象描述: select * from resultgroup where upUser = "kkk" order by patientId desc 为什么会出现这...
2024-01-10MySQL必知必会第十六章~第十七章
5.使用带聚集函数的联结 select customers.cust_name, customers.cust_id, count(orders.order_num) as num_id from customers inner orders on customers.cust_id = orders.cust_id; 6.联结要点 (1)注意所使用的联结类型。一般我们使用内部联结,但使用外部联 结也是有效的。 (2)保证使用正确的联结条件,否则将返回不正...
2024-01-10mysql相关知识整理(参考《高性能MySQL》)
2.事务的隔离级别1.未提交读:事务的修改,即使没有提交,对其他事务也都是可见的。(有脏读可能性)2.已提交读:一个事务从开始直到提交之前,所作的任何修改对其他事务都是不可见。(有不可重复读可能性)3.可重复读:同一个事务多次读取同样的记录是一致的。(有幻读可能性)。MySQL的...
2024-01-10MySQL必知必会第二十二章~第二十三章
第二十三章--使用存储过程 1.存储过程:存储过程简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。 2.为什么要使用存储过程? (1)通过把处理封装在容易使用的单元中,简化复杂的操作(正如前 面例子所述)。 (2)由于不要求反复建立一系列处理步骤,这保证了数据的完...
2024-01-10MySQL必知必会第二章~第四章MySQL简介
1.DBMS可分为两类:一类为基于共享文件系统的DBMS,另一类为基于客户机—服务器的DBMS。服务器部分是 负责所有数据访问和处理的一个软件。这个软件运行在称为数据库服务 器的计算机上。 2.MySQL Administrator(MySQL管理器)是一个图形交互客户机,用 来简化MySQL服务器的管理。 3.使用use 关键字选择数据库:...
2024-01-10mysql同步异常
收到报警,数据库同步延迟登上mysql服务器,查看进程,发现同步的state一直是“Reading event from the relay log”而正常情况下,同步是很快的,状态应该是想着主库可能是有写入,尚未同步完,等一下可能就正常了,然而,过了两三分钟也没好转,而且延迟时长越来越大了,查看是否有lock的进程SELECT * FRO...
2024-01-10mysql标识列的特点
1、标识列不一定要和主键搭配,但要求是key。2、一个表最多有一个标识列。3、标识列的类型只能是数值型。通过SET auto_increment_increment=3,标识列可以设置步长。4、起始值可通过手动插入设置。实例DROP TABLE IF EXISTS tab_id; CREATE TABLE tab_id(id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(20)); INSERT INTO t...
2024-01-10mysql主从复制策略的介绍
说明1、全同步,master要求服务时,等待slave全部同步后才会回应client端。2、半同步,master请求服务时,只需要任何slave同步。3、异步,master同步,无论slave的状态,用默认状态。实例(1)查看server1的uuid[root@server1 mysql]# cat /var/lib/mysql/auto.cnf[auto]server-uuid=db6e25ff-b049-11e9-84f5-525400ca9499 (2)在server1...
2024-01-10mysql初选条件
如果主条件匹配,返回结果基于主条件,无论二级条件是否匹配,如果没有匹配结果,则返回二级条件的数据库。mysql初选条件以交换外汇为例,我有一个汇率表,我需要拿到美元汇率:英镑,如果没有,那么得到英镑汇率:美元。如果两者都有,只返还美元:英镑。id origin_currency target_currency rate_fr...
2024-01-10mysql入门(二)
MySQL数据库中相关概念介绍 1.字符集字符集:可见字符在保存和传输的时候,二进制的代码集合。字符集:1. 保存数据;2. 传输数据。1). MySQL可以在服务器上,数据库,表,字段上指定字符集 2). 服务器上在系统安装的时候就要指定3). 数据库,表和字段在创建的指定create table test( name varchar(64) charset gb231...
2024-01-10mysql第五课
修改表中一行或多行数据:SELECT*FROM student;+----+------+------+| id | name | ban |+----+------+------+| 1 | yy | 1913 || 7 | ss | 1923 || 8 | 许 | 1913 || 9 | 应 | 1913 || 10 | Aron | 1913 |+----+------+------+5 rows in setUPDATE student SET name="yiyq"WHE...
2024-01-10mysql死锁的检测
说明1、检测死锁:数据库系统实现了各种死锁检测和死锁超时机制。InnoDB存储引擎可以检测到死锁的循环依赖,并立即返回错误。2、外部锁的死锁检测:InnoDB不能完全自动检测死锁,则需要设置锁等待超时参数innodb_lock_wait_timeout来解决。发生死锁后,InnoDB一般自动检查,一个事务释放锁后退,另一个...
2024-01-10mysql“不在哪里”使用两列
我有一个包含userID和的临时表taskID。它被称为CompletedTasks。我还有另一个包含userID和的表taskID。它被称为PlannedTasks。我需要获取所有taskID已完成但尚未计划的清单。因此,我需要以某种方式从已完成的任务中清除所有行,其中都包括:PlannedTasks.userID != CompletedTasks.userID和PlannedTasks.taskID != CompletedTasks....
2024-01-10mysql自定义排序
我有这样的查询: SELECT * FROM table WHERE id IN (2,4,1,5,3);但是,当我打印出来时,它会自动进行1,2,3,4,5的排序。我们如何在不更改数据库结构的情况下保持顺序(2,4,1,5,3)?谢谢!回答:我问这个:mysql按问题排序我得到的答案和所有功劳归于他们:您可以使用CASE运算符指定顺序:SELECT * FROM tableWHERE ...
2024-01-10mysql端口号多少
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。mysql默认端口号是3306,可以编辑用户目录下的 .my.cnf 文件进行修改。推荐:MySQL教程1、mysql的默认端口是3306,可以编辑用户目录下的 .my.cnf 文件进行修改;2...
2024-01-10