问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

oracle SQL查询中,如何在where中用条件语句,判断不同情况,追加不同的An...

发布网友 发布时间:2022-04-23 03:05

我来回答

3个回答

懂视网 时间:2022-05-02 14:56

where子句 --查询部门编号是10的所有的员工 select * from emp where deptno = 10; --查询部门中工资是3000的员工 select * from emp where sal = 3000; --找到部门中编号是 7788的员工 select * from emp where empno = 7788; --查询姓名为SCOTT的员工所有信息 --在使用where 查询条件,字符串是单引号而且区分大小写 select * from emp WHERE ename = ‘SCOTT‘; --查询所有在日期是1981年5月1日入职的员工信息 --select * from emp where hiredate = ‘1981-5-1‘; --日期默认格式是 DD-MON-YYYY 查询条件按照日期来,日期也要加单引号 select * from emp where hiredate = ‘1/5月/1981‘; --查询工资大于3000的员工 select * from emp where sal>=3000; ---注意:sal=>3000 是错误的!数据库将不认识此符号! --查询工资范围在1500-3000的员工所有信息 select * from emp where sal>=1500 and sal<=3000; -- between..and...表示介于 两个值之间,包涵边界值 select * from emp where sal between 1500 and 3000; --查询姓名是KING和SCOTT的详细信息 select * from emp where ename = ‘KING‘ or ename =‘SCOTT‘; --IN 表示出现在集合中的记录 select * from emp where ename in (‘KING‘,‘SCOTT‘); --查询工资不等于3000的员工信息 select * from emp where sal <> 3000; --method1 select * from emp where sal !=3000; --method2 select * from emp where not sal = 3000; --method3 取反运算 --查询所有没有提成的员工的信息 -- is null 表示某个字段为空 不为空 is not null select * from emp where comm is not null; -- 取反的意思 where not comm is null select * from emp where not comm is null; -- not 也可以代表取反的意思 select * from emp where ename not in (‘KING‘,‘SCOTT‘); --查询所有姓名以s开头的员工信息 -- 使用 like 和 通配符 -- 两个通配符 %代表0个或者多个字符 _一个字符 select * from emp where ename like ‘%S‘; ---字符(或是‘ ‘)里面严格区分大小写。建议全部大写书写语句! --查询名字中带有0的 select * from emp where ename like ‘%O%‘; --查询第二个字母是L的员工的所有信息 select * from emp where ename like ‘_L%‘; --查询员工姓名中带有_的所有的信息 --ESCAPE ‘’ 相当于自己定义一个转义符 select * from emp where ename like ‘%a_%‘ ESCAPE ‘a‘;

 

Oracle条件查询语句-where

标签:建议   weight   dep   查询语句   eth   gpo   表示   运算   esc   

热心网友 时间:2022-05-02 12:04

1、先创建一个简单的数据表。

2、插入数据,顺便复习插入数据了,最好多插几个,查询的时候更明显。

3、select后面的字段是等下查询结果所显示的,where就是*的条件,根据where查询到对应的列。

4、如果字段里面有数字的话也是可以根据数字大小进行查询的。

5、加入and语句可以同时*两个条件来查询。

6、用%来查询,百分号在字母前表示以什么字母开头的,这里就是以名字为d开头来查询数据,同理把%放在后面就是以d结尾的名字。

热心网友 时间:2022-05-02 13:22

你是不是描述的有错误?怎么两次都是username不为空?

估计可以有好几个:

1、可以用union all

select * from table where 1=1 and (username is not null and instr(username , '李四') > 0) 
union all
select * from table where username is null

2、你写的这个好像or and的逻辑有问题,可以改改

select * from table where 1=1 
and ((username is not null and instr(username , '李四') > 0) or (username is null))

理解错误的话请纠正

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
特别精辟的个性签名(非常经典的个性句子) 特别经典的个性签名(非常惊艳的个性句子) 文艺范十足的个性签名(温柔治愈的个性签名句子) wps文字怎么设置每页头和尾 27岁的女人需要补充哪些营养元素 27岁该重视美容了吗?都可以用哪些方法好些呢? airpods连不上手机怎么回事 - 知百科 腰肌劳损能养好吗? 有一段相声讲的是原始人打猎,唱歌,学说话的,请问名字是什么? 个人征信逾期记录的修复攻略,手把手传授 玩得好好的,为什么电脑会自动重启呢. oracle中的集合操作符的查询效率和and、or相比,有什么不同么,为什么... 电脑自动关机和重启是什么原因 ASP(SQL)中的“and”与“or”的先后顺序 我的电脑老是自动关机重启是什么原因? sql的where语句中,and 和 or能不能同时使用 电脑自动关机重启,然后开机黑屏? Oracle WHER条件的执行顺序是不是自右向左 台式电脑,一玩游戏就会自动关机,自动重启,什么原因,怎么解决? mysql 中 where语句后 or 和and 应该如何用 电脑为啥玩着突然自动关机又重新启动? sql语句的and和or怎么确定执行的先后顺序呢 我的电脑老是自动关机,重启。什么原因? sql语句的and和or怎么确定执行的先后顺序? 在SQL server中and和or的执行顺序是什么? 笔记本电脑自动关机重启是怎么回事? sql语句的and和or怎么确定执行的先后顺序 我的电脑为什么玩着玩着就自动关机自动重新启动呢? oracle sql 语句执行顺序 为什么笔记本电脑一玩游戏就自动关机啊? 关于电脑老是自动关机又重新启动的问题是何原因? sql查询语句中where后的and 和 or 两侧必须有空格吗? oracle 在where and的第一个条件成立后才能执行第二个条件么 在oracle中,怎么将一个OR作为一个and条件? 三星s20永不熄屏怎么设置?- 问一问 三星note4手机如何设定锁屏后不断网络 三星手机怎么设置手机永远都不会自动锁屏 怎么设置三星A90手机锁屏后不断开网络? 三星C7 Pro怎么设置锁屏后自动断网 三星手机怎么设置永不锁屏 三星手机怎么设置锁屏? 三星怎么设置屏幕锁 三星手机如何设置自动锁屏? 三星note3怎么设置屏幕永久不锁屏? 如何让三星手机屏幕锁屏时间长一点? 三星手机怎么设置不能自动锁屏? 三星note5怎样设置锁屏断网功能 如何让三星手机的锁屏壁纸自动循环更换? 新买的vivo5g手机第一次充电要充24小时吗? 三星a5000不会自动锁屏怎么设置?