SQL学习之关键字

  1. as 将as前的关系起一个别名,在此语句中,可以用别名来代指这个表
    select A.* from ATable as A , BTable as B
  2. is null 在where中使用is null表示这个值是空值
    select * from table where age is null;
  3. is not null 在where中使用is not null表示这个值不是空值 (同上类似)
  4. 当判断条件存在 ‘单引号时,可以采用’或者 ‘’ 来转义,一般采用’,这样比较清晰
  5. and 表示判断条件的 “ 且 ”
  6. or 表示判断条件的 " 或 "
  7. <> 表示不等于
  8. in( ‘X’ , ‘Y’ , ‘Z’) 表示判断的属性在()中的数据其中一个
    select * from table where flag is in ('X' , 'Y' , 'Z');
  9. not in( ‘X’ , ‘Y’ , ‘Z’) 同上,取反
    in 和 not in 的写法如果数据具有一定的关联性,比如1,2,3,4之类的可用between … adn … 来替换,而且where的判断部分如果OR很多的话也可in的形式来简洁代码
  10. between … and …
    select * from table where name between 'A' and 'Z'
    这个我们可以得到name以’A’开头到‘Z’开头的数据,但是前后数据必须是后者大于前者,否则无数据,中文也是可以的,亲测可行
  11. like 表示模糊匹配搜索
    select * from table where name like 'A%'
  12. % 表示多个字符集,如上例子,表示匹配name为以A开头的数据
  13. _ 表示单个字符,与%类似,就是数量的不同
  14. 原子性数据,原子性数据就是表示数据不能或者不应该在分割,比如地址就可以用一列来存储街道和门牌号,而不是分割成街道一列,门牌号一列,这样可以缩短查询时间,更有效率。

总的来说,如果表比较小的:
效率上 == 和 in 和or 相差不大
表比较大的话
== > in > or
因为 or 一次就要去遍历一次, in的话是一个数据集里面去查找,== 的话相当于数据集只有一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值