SQL语句的简单查询注意问题总结(sql基础教程)

设置中文别名需使用双引号;

Distinct关键字只能用在第一个列名前;

Select-where执行顺序,先执行where后执行select,where紧跟from语句;

--后面接的注释需写在同一行,/*  */之间的注释可以跨多行;

所有包含Null的计算,计算结果都是Null;

Where子句中也可以使用计算表达式;

字符型数据的排序按照字典的顺序进行;

Null字段无法进行比较运算,需使用IS Null 或IS NOT Null;

Count函数根据参数不同结果不同,count(*)计算包含Null值的所有结果,count(列名)计算不包含Null值的结果;

聚合函数会排除Null值,但是count(*)除外;

Max和Min函数适用于所有数据类型,AVG和Sum只适用于数值型列;

聚合函数删除重复值使用distinct,需把distinct放在括号内使用;

聚合函数分组包含Null值时,结果会以不确定性行的形式表示;

包含聚合函数的的Select语句只能存在三种元素,常数,聚合函数,groupby语句中指定的列名,不能把聚合键之外的列名写在select语句中;

Groupby语句中不能使用select语句中定义的列名,执行顺序from-where-groupby-select;

只有select语句和having 语句中能使用聚合函数,where语句中不能使用聚合函数;

Where子句指定行的条件,having语句指定组的条件;

Having语句需写在groupby语句之后,select-from-where-groupby-having;

包含聚合函数的的having语句只能存在三种元素,常数,聚合函数,groupby语句中指定的列名,不能把聚合键之外的列名写在select语句中;

聚合键对应的条件应写在where语句中,而不是having语句中;

Ditinct 在多列使用时,会将多列数据进行组合,将重复的数据合并成一条;

Orderby语句可以使用select语句中的别名也可以使用不在select中但是在表中的字段,也可以使用聚合函数;

带一个值的limit从第一行返回,给出的数为返回的行数,带两个值的limit可以指定从行号为第一个的值开始,第二个数为返回的行数;

Like搜索需使用通配符,regexp不需使用通配符;

Binary 关键字,在正则表达式中区分大小写,where 字段 regexp binary ‘表达式’;

Or 匹配,搜索两个字符串之一,使用 | 符号,‘表达式1|表达式2’;

[ ]字符集合,集合内为or 的关系;^否定字符,[^123] ton;- 字符,定义一个范围,[0-9];

\\转义字符,如搜索' . ' 使用‘\\.’,搜索'\' 使用‘\\\’

Where 语句中使用子查询必须保证where语句和select语句中有相同的列;

Where子句在分组前筛选,having在分组后筛选;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容