码迷,mamicode.com
首页 > 数据库 > 详细

Mysql语法复习总结

时间:2018-11-23 20:39:13      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:关系   rod   子查询   必知必会   相关子查询   sele   依次   检索   包含   

主键、联合主键

主键任意两行不可重复且不能为空。

主键可以定义在表的一列也可以一起使用多个列作为联合主键

Mysql不区分大小写

推荐对所有SQL关键字用大写,对所有的列和表名用小写

DISTINCT

DISTINCT关键字只返回指定列不同的行,但DISTINCT运用于所有列而不仅是前置他的列

LIMIT

LIMIT 5,5 指示Mysql返回从第5行开始的5行

ORDER BY

ORDER BY中使用的列不一定是SELECT正在检索的列

如果有ORDER BY后面有多个列,按照ORDER BY后面指定的列的顺序依次排序,如果前面列的值相同,再按后面的列的顺序排列。

排序默认是升序的

DESC

ORDER BY prod_price DESC。降序排列。

DESC只作用于它前面的一个列。

结合LIMIT

ORDER BY prod_price (DESC) LIMIT 1

可以找出表中的最值

WHERE

BETWEEN AND

WHERE prod_price BETWEEN 5 AND 10;

查询5 <= prod_price <= 10的列

AND、OR

WHERE (vend_id = 1002 OR vend_id = 1003) AND prod_price >= 10

IN

WHERE vend_id IN (1002, 1003) AND prod_price >= 10

NOT

WHERE vend_id NOT IN (1002, 1003) AND prod_price >= 10

LIKE

%通配符

WHERE prod_name LIKE ‘%jet‘ 表示查询prod_name中以jet为结尾的行

WHERE prod_name LIKE ‘%jet%‘ 表示查询prod_name中任意位置包含jet的行。

_通配符

WHERE prod_name LIKE ‘_ jet‘ _匹配单个字符。%匹配任意数量的字符。

CONCAT

技术分享图片

AS

表和字段都可以取别名

SELECT * FROM 表名 [AS] 别名; 

SELECT 字段名 [AS] 别名 [,字段名 [AS] 别名,……] FROM 表名; 

注意,为表和字段指定别名,AS关键字可以省略不写

聚集函数  

AVG():返回某列平均值

COUNT():返回某列的行数

MAX():返回某列的最大值

MIN():返回某列的最小值

SUM():返回某列之和

技术分享图片

分组数据(GROUP BY、HAVING)

除聚集函数外,SELECT中的每个列都必须在GROUP BY子句中给出。

WHERE的语法适用于HAVING,WHERE过滤行,HAVING过滤分组。

子查询

WHERE中的子查询

WHERE子句中可以使用子查询,有一点需要注意:列必须匹配

技术分享图片

SELECT字段中的子查询(相关子查询)

SELECT的一个字段也可以使用子查询,注意完全限定的列名的使用(表明.列名

技术分享图片

 

联结(JOIN)

没有WHERE子句(联结条件)限定的结果返回的是两个表的笛卡尔积,检索出的行数是第一个表的行数*第二个表的行数。

INNER JOIN

以下两个语句是等价的,后者使用了INNER JOIN,也是推荐使用的语法

技术分享图片技术分享图片 

OUTER JOIN

联结中包含了那些在相关表中没有关联的行,成为外连接

必须指定使用左连接还是右连接。

  • INNER JOIN(内连接,或等值连接):取得两个表中存在连接匹配关系的记录。
  • LEFT JOIN(左连接):取得左表(table1)完全记录,即使右表(table2)并无对应匹配记录。
  • RIGHT JOIN(右连接):与 LEFT JOIN 相反,取得右表(table2)完全记录,即使左表(table1)并无匹配对应记录。

组合查询(UNION)

union :用于合并多个 select 语句的结果集,并去掉重复的值。 union all :作用和 union 类似,但不会去掉重复的值。

插入(INSERT)

除插入自定义的数据外,还可插入SELECT语句的查询结果,INSERT INTO 后面的列名可以和SELECT后的列名不同,根据位置匹配插入

 

 

参考:

《mysql必知必会》

Mysql语法复习总结

标签:关系   rod   子查询   必知必会   相关子查询   sele   依次   检索   包含   

原文地址:https://www.cnblogs.com/kukri/p/10009035.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!