0
点赞
收藏
分享

微信扫一扫

mysql一些小知识点

mysql的三值逻辑

mysql 使用的是三值逻辑:TRUE   FALSE   UNKNOWN。


任何与null值进行的比较都会与第三种值 UNKNOWN 做比较。这个“任何值”包括 null 本身。


所以mysql 提供了 is null 和 is not null 两种操作来对null做特殊判断


因此,在进行select查询时,如果查询到的值有为空的时候,在where语句中我们就需要再做一


个额外的条件判断 ,比如:'name is null';


举个栗子:


返回一个用户列表,列表中用户的年龄都不是18.


select name from user where age <> 18 or  age is null

not in

select Name 'Customers' from Customers where Id not in(select CustomerId from Orders)

用来查询不在某个值集的数据


举个栗子:


查询user表中年龄不在18,15,20的用户


select name from user where age not in(18,15,20)

推荐:数据库入门


mod(a,b)

在sql中的意思是 a / b 的余数,如果某个字段需要是偶数或者奇数时就可以使用mod。


以id为例:


mod(id,2)=1 是指id是奇数。


mod(id,2)=0 是指id是偶数。


left()

left()函数是一个字符串函数,它返回具有指定长度的字符串的左边部分。


格式:left(str,length)。


if(exer,v1,v2)

语法结构是if(exer,v1,v2)


expr为一个表达式,表达式expr结果为ture,返回v1的值,为flase返回v2。


update salary set sex=if(sex='m','f','m')

举报

相关推荐

0 条评论