急!请教这个sql语句怎么写:两个条件查询,其中一个满足,另一个条件就不要加了

条件2始终存在,条件1不一定始终有。条件1、条件2的数据可能同时存在,但是
当有条件1的数据存在的时候,显示条件1的数据;
如果没有,则显示条件2的数据的数据。

2个回答

select * from table where
(条件1 and not exist (select * from table where 条件2))
or
(条件2 and not exist (select * from table where 条件1))

SFQRM
SFQRM 回复殇—溺水的鱼: 【控制面板】--【程序】--【程序和功能】-【启用或关闭WINDOWS功能】-将和.NEF相关的复选框前面的V去掉。你试试,我不确定
4 年多之前 回复
xtxbc
xtxbc 这个方法不行,因为会出现条件一和条件二都满足的情况,如果都出现我只需要取满足条件一的数据
5 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
5 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
5 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
5 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
5 年多之前 回复

查询条件是在查询的时候,查看该条记录是否符合条件。
而你提的问题是,要求查询逻辑的控制,是否使用条件2取决于条件1的查询结果。
所以还是要写成两条语句,在条件1没有数据的时候,再去第二次查询条件2。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问