MySQL高级SQL语句( 二 )


NULL与空值的区别:
空值长度为0 , 不占空间;NULL值的长度为NULL , 占用空间
IS NULL无法判断空值 空值使用“=”或者“<>”来处理
COUNT()计算时 , NULL会忽略 , 不加入计算 , 空值会加入计算
九、正则表达式
根据指定的匹配模式匹配记录中符合要求的特殊字符使用REGEXP关键字指定匹配模式
常用匹配模式

MySQL高级SQL语句

文章插图
 
例:
查询以l开头的记录:
MySQL高级SQL语句

文章插图
 
查询以o结尾的
MySQL高级SQL语句

文章插图
 
.代表任意单个字符 , 占位 , 查询lihao的记录
MySQL高级SQL语句

文章插图
 
查询不是z开头的
MySQL高级SQL语句

文章插图
 
匹配w及后面一个w两次
MySQL高级SQL语句

文章插图
 
十、运算符
MySQL 的运算符用于对记录中的字段值进行运算 。MySQL 的运算符共有四种 , 分别是:算术运算符、比较运算符、逻辑运算符和位运算符 。下面分别对这四种运算符进行说明 。
10.1 算数运算符
MYSQL支持使用的运算符号
MySQL高级SQL语句

文章插图
 

MySQL高级SQL语句

文章插图
 
10.2 比较运算符
常用比较运算符
MySQL高级SQL语句

文章插图
 
10.2.1 等于
等号(=)是用来判断数字、字符串和表达式是否相等的 , 如果相等则返回 1 , 如果不相等则返回 0 。如果比较的两者有一个值是 NULL , 则比较的结果就是 NULL 。其中字符的比较是根据 ASCII 码来判断的 , 如果 ASCII 码相等 , 则表示两个字符相同;如果 ASCII 码不相等 , 则表示两个字符不相同 。例如 , 等于运算符在数字、字符串和表达式上的使用
MySQL高级SQL语句

文章插图
 
10.2.2 不等于
不等于号有两种写法 , 分别是<>或者!= , 用于针对数字、字符串和表达式不相等的比较 。如果不相等则返回 1 , 如果相等则返回 0 , 这点正好跟等于的返回值相反 。需要注意的是不等于运算符不能用于判断 NULL 。
MySQL高级SQL语句

文章插图
 
10.2.3 大于、大于等于、小于、小于等于
大于(>)运算符用来判断左侧的操作数是否大于右侧的操作数 , 若大于返回 1 , 否则返回 0 , 同样不能用于判断 NULL 。小于(<)运算符用来判断左侧的操作数是否小于右侧的操作数 , 若小于返回 1 , 否则返回 0 , 同样不能用于判断 NULL 。大于等于(>=)判断左侧的操作数是否大于等于右侧的操作数 , 若大于等于返回 1 , 否则返回 0 , 不能用于判断 NULL 。小于等于(<=)判断左侧的操作数是否小于等于右侧的操作数 , 若小于等于返回 1 , 否则返回 0 , 不能用于判断 NULL 。数值比较会自动转换ASCII表的数值
几个常用Dec(十进制):
0是48,A是65 , a是97 , 其余的都是按顺序下去的
MySQL高级SQL语句

文章插图
 
10.2.4 IS NULL、IS NOT NULL
ISNULL 判断一个值是否为 NULL , 如果为 NULL 返回 1 , 否则返回 0 。IS NOT NULL 判断一个值是否不为 NULL , 如果不为 NULL 返回 1 , 否则返回 0
MySQL高级SQL语句

文章插图
 
10.2.5 BETWEEN AND
BETWEEN AND 比较运算通常用于判断一个值是否落在某两个值之间 。例如 , 判断某数字是否在另外两个数字之间 , 也可以判断某英文字母是否在另外两个字母之间 。between and 包含两端


推荐阅读