永洪社区

标题: SQL语句-Where实例案例(举一反三) [打印本页]

作者: yhdata_38fa8dc0    时间: 2023-3-17 19:03
标题: SQL语句-Where实例案例(举一反三)
因自己对SQL语句处于小白状态,经常在网络上飘来飘去,后面遇到一些实用案例,举一反三、依葫芦画瓢还是能满足一些自己的需求,也希望对大家有所帮助(网络搬运工):对于Where语句,主要是进行条件筛选,例子如下:


Where 子句
搜索 empno 等于 7900 的数据:
Select * from emp where empno=7900;Where +条件(筛选行)
条件:列,比较运算符,值
比较运算符包涵:= > < >= ,<=, !=,<> 表示(不等于)
Select * from emp where ename='SMITH';
例子中的 SMITH 用单引号引起来,表示是字符串,字符串要区分大小写。
逻辑运算
And:与 同时满足两个条件的值。
Select * from emp where sal > 2000 and sal < 3000;
查询 EMP 表中 SAL 列中大于 2000 小于 3000 的值。
Or:或 满足其中一个条件的值
Select * from emp where sal > 2000 or comm > 500;
查询 emp 表中 SAL 大于 2000 或 COMM 大于500的值。
Not:非 满足不包含该条件的值。
select * from emp where not sal > 1500;
查询EMP表中 sal 小于等于 1500 的值。
逻辑运算的优先级:
()    not        and         or

特殊条件
1.空值判断: is null
Select * from emp where comm is null;
查询 emp 表中 comm 列中的空值。
2.between and (在 之间的值)
Select * from emp where sal between 1500 and 3000;
查询 emp 表中 SAL 列中大于 1500 的小于 3000 的值。
注意:大于等于 1500 且小于等于 3000, 1500 为下限,3000 为上限,下限在前,上限在后,查询的范围包涵有上下限的值。
3.In
Select * from emp where sal in (5000,3000,1500);
查询 EMP 表 SAL 列中等于 5000,3000,1500 的值。
4.like
Like模糊查询
Select * from emp where ename like 'M%';
查询 EMP 表中 Ename 列中有 M 的值,M 为要查询内容中的模糊信息。



作者: 天问台    时间: 2023-3-30 09:36
写得很好,但有一丢丢小意见。

Select * from emp where ename='SMITH';
例子中的 SMITH 用单引号引起来,表示是字符串,字符串要区分大小写。

特意验证了下,在SQLSERVER 2008 R2环境下,条件不区分大小写

而且度娘说:【MySQL】MySQL的where条件字符串区分大小写的问题_mysql where 区分大小写_浮云6363的博客-CSDN博客  https://blog.csdn.net/lz6363/article/details/107441840

作者: yhdata_38fa8dc0    时间: 2023-3-31 20:23
天问台 发表于 2023-3-30 01:36
写得很好,但有一丢丢小意见。

Select * from emp where ename='SMITH';


作者: 天问台    时间: 2023-4-1 10:45
yhdata_38fa8dc0 发表于 2023-3-31 20:23


作者: yao3979    时间: 2023-4-5 22:35
学习
作者: yhdata_dhm    时间: 2023-7-10 09:01
学习
作者: yh_8Kf3pyJT    时间: 2024-3-12 11:11
很有帮助




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4