1、between value1 and value2:包含了value1和value2
2、null值是不参与in和Not in值得比较的
3、如果where子句后的条件使用了Not运算符,其优先级是最高的,先进行Not(取反)运算,再进行and或or运算
and的优先级高于or
4、模糊匹配:
_:与任意单字符比较
%:与包含一个或多个字符比较
[]:与特定范围(如:[a-f]或特定集[abcdef])中的任意单字符匹配
5、聚合函数:
(1)关键字distinct应写在count()函数内,并就其中不重复的列进行统计,不能使用*,以防出错
eg: select count(distinct(sno)) from stu; --统计所有不重复的记录
(2)与sum函数一样,avg函数也只允许对数值型数据进行操作,否则出现错误
(3)查找并替换字符串:replace(str1,str2,str3)
eg:select replace(sdept,'计算机','computer')
from stu;--计算机替换成computer
6、时间计算:
(1)round(number,decimal_places):decimal_places表示四舍五入取得位数,默认为0
eg:round(123.456)=123、round(123.456,2)=123.46
round(123.456,-2)=100、round(163.456,-2)=200
位数为负数时,表示对小数点前的数字进行四舍五入
(2)add_month(d,n)
7、where和having的区别:
(1)在where子句中,在分组进行以前,消除不满足条件的行,在having子句中,在分组之后条件被应用
(2)having可在条件中包含聚合函数,但where不行
(3)where子句用于表和视图,having用于分组
8、对查询进行集合运算:
INTERSECT(交集):返回两个查询共有的记录
UNION ALL(并集):返回各个查询的所有记录,包括重复记录
UNION(并集):返回各个查询的所有记录,不包含重复记录
MINUS(补集):返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录
转载于:https://www.cnblogs.com/baobao-caicai/p/6856024.html