对于查询结果排序:
ORDER BY :SELECT *FROM 表名 ORDER BY 字段 ASC/DSC
默认升序:ASC
降序为:DESC
按照多个字段进行排序:
按照字段的升序或是降序进行排序
随机排序 :SELECT * FROM 表名 ORDER BY RAND()
限制显示条数:
LIMIT限制查询结果显示条数
1、显示条数:SELECT * FROM 表名 LIMIT 数字(显示条数值)
2、显示偏移量、显示条数
3、查询显示表中的前一条数据:SELECT * FROM 表名 LIMIT 限制值
更新记录与删除记录:
更新记录:UPDATE 表名 SET 字段=值 WHERE 表名 LIKE ‘__’
删除记录:DELETEV FROM 表名 WHERE 字段 = 值 ORDER BY 字段 LIMIT 限制值
连接查询:
定义:连接查询就是将两个或两个以上的表按照某个条件连接起来,从中选择需要的数据,可以通过字段来连接诶几个表
内连接查询:SELECT 字段 FROM 多个表名 WHERE 字段=字段 也可以用JOIN连接多个表 SELECT 表名.字段 表名简化 JOIN 表名简化 ON(表示条件) 字段=字段 (找准表和表之间的连接条件即可)
外连接查询:
1、左外连接:显示左表的全部记录,及右表符合连接条件的记录;SELECT 表名.字段 FROM AS LEFT JOIN AS ON 字段=字段
2、右外连接:显示右表的全部记录,及左表符合连接条件的记录;SELECT 表名.字段 FROM AS RIGHT JOIN AS ON 字段=字段 (用的比较多)
外键操作:
1、是表的一个特殊字段,被参照表是主表,外界参照的是子表,设置外键的原则,就是依赖数据库中已经存在的主键,外键的作用是建立表与其附表的关联关系,父表发生变化是子表对应发生变化
2、外键主要作用是保证数据表的完整性和一致性
3、可以实现一对一或是一对多的关系
4、父表和子表使用的是相同的存储引擎,禁止使用临时表
5、存储引擎只能为InnoDB,外键和参照必须具有形似的数据类型,其中数字的长度或是是否有符号位必须相同,而字符的长度可以不同
6、外键列和参照列必须创建引擎索引,如果外键列不存在索引的话,MySQL将自动取消创建索引
添加删除外键操作:
ALTER TABLE 表名 DROP FOREIGN KEY (删除外键)
ALTER TABLE 表名 ADD CONSTRAINT 字段 FOREIGE KEY REFERENCES (添加外键)
联合查询:
UNION:SELECT 字段 FROM UNION SELECT 字段 FROM 表名(去掉相同记录)
UNION ALL :SELECT 字段 FROM UNION ALL SELECT 字段 FROM 表名(简单合并)
子查询:
定义:讲一个查询语句嵌套在另一个查询语句中,内层查询语句的查询结果,可以作为外层查询的条件
1、 IN、NOT IN
SELECT 字段 FROM WHERE IN (SELECT字段 FROM )
2、比较运算符的子查询
3、使用NOT EXISTS的子查询
4、使用ANY|SOME或是ALL的子查询
将查询结果写入到数据表: INSERT 字段 SELECT 字段 FROM 表名
创建数据表的同时将查询结果插入数据表: CREAT TABLE KEY SELECT FROM
正则表达式查询:
1、REGEXP 匹配方式 SELECT * FROM WHERE REGEXP
2、常用匹配方式:
-^:字符开始的部分
-$:字符串结尾的部分
-.:代表任意字符
[--]:字符集合
[^字符集合]:匹配字符集合中以外的任何一个字符
S1|S2|S3|:匹配任意一个字符串
*:代表0或1或是多个其前面的字符
+:出现一个或是多次前面的记录
String{N}:字符串出现N次
字符串{M,N}:字符串至少出现M次,最多N次