SELECT [ALL|DISTINCT] <字段1>/<表达式>,<字段2> [AS] <新字段名> FROM <表名> [AS] <别名>/子查询语句 [AS] <别名> [ WHERE <条件> ] [ GROUP BY <字段> [ HAVING <条件> ] ] [ ORDER BY <字段> [ ASC|DESC ] ];
ALL 与 DISTINCT
distinct去除重复的数据
默认为all不去重
AS 别名
AS 别名
表达式
字段类型是数字类型的字段可以进行加减乘除四则运算
?比较谓词 ?=, >, <, >=, <=, !=, <>, !>, !<; ?字段 = 值; ?not ?not 字段 = 值 ?范围谓词 ?BETWEEN AND, NOT BETWEEN AND ?字段 (not) between 值1 and 值2 ?集合谓词 ?IN, NOT IN ?字段 (not) in (值1,值2,值3) ?字符匹配 ?LIKE, NOT LIKE ?%:匹配多个任意字符 ?_:匹配一个任意字符 ?字段 (not) like “字符串” ?空值谓词 ?IS NULL, IS NOT NULL ?逻辑谓词 ?AND, OR, NOT ?条件1 and 条件2 ?regexp正则 ?用于条件判断,进行字符串匹配 ?示例:字段 regexp ‘正则表达式‘ #select * from emp where name regexp ‘^j.*(n|y)$‘;
用于条件筛选
GROUP BY 与 聚合函数
HAVING短语
ps:HAVING语句一般配合作用于分组函数之后
ORDER BY 排序
对查询结果表按指定列值的升序(asc)或降序(desc)排序,默认升序(sc)
示例:order by 字段 desc
CONCAT与GROUP_CONCAT
concat在未使用group by 的情况下来进行数据拼接
示例:select concat(字段1,’字符串‘,’字段2‘)
concat在使用group by 后来进行数据拼接
效果与concat相同
limit
用于限制条数,写在语句最后。 limit只有一个参数时,参数表示展示的条数 limit有两个参数时候,第一个参数表示起始位置,第二个参数表示起始位置之后的展示条数 select * from emp limit 5,5;
使用情况:Mysql使用分组后获取其他字段信息不报错
设置方式
原文:https://www.cnblogs.com/Cpsyche/p/11390741.html