急!请教这个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 这个方法不行,因为会出现条件一和条件二都满足的情况,如果都出现我只需要取满足条件一的数据
4 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
4 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
4 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
4 年多之前 回复
xtxbc
xtxbc 谢谢啦,我去试试看~~
4 年多之前 回复

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

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
这个sql语句怎么写:按照两个条件查询,其中一个优先?点击查看详情>>
这个sql语句怎么写:按照两个条件查询,其中一个优先。rnrnselect * from table where 条件一 !important OR 条件二rnrn即满足条件一的结果排在前面rnrn这个SQL语句怎么写呢?
这个删除条件 SQL语句怎么写?
要删除10秒前的数据。。。sql语句怎么写?rnrn数据库是MYSQL的??
判断两个条件都满足着合格,怎么写语句
t1 t2 合格与否rn161 151 合格rn153 169 合格rn197 192 合格rn113 136 不合格rn111 174 不合格rn106 177 不合格rn150 144 不合格rn180 148 不合格rn173 172 合格rnt1 t2 都大于150的话合格,否则不合格,如何在sql server 写语句
sql语句中排序时怎么同时满足两个条件
大家好 我想问一下可不可能sql的wher条件中排序同时满足两个条件,rn像这样不是我要的order by movie.ptoptimes desc , movie.commendtimes descrn这样还是有先后顺序,
sqlite3有两个排序条件,请教怎么写sql语句
创建表:rnCREATE TABLE data1 ( ti INTEGER, di CHAR(4), data CHAR(12), rec_time INTEGER, format CHAR(1) );rnrn查询:rnSELECT * FROM data_rt;rnrnrn想对查询得到的记录先以ti从小到大排序,再就是在同一个ti里,按di从小到大排序rnrn请教怎么写sql语句?rnrn
不满足条件就循环到条件满足为止,改怎么写?
如题!
请教,当满足全部循环条件,这个怎么写
[code=html]rnFor i = 0 To ubound(a)rnrn Set rs = Server.CreateObject("adodb.recordset")rn rs.open "select * FROM dbo.d_stock where d_prd_no=" & d_prd_no(i),conn,1,3rnrn If Not rs.EOF Thenrnrn d_kcpd = CDbl(rs("d_sto_qty")) + CDbl(Trim(d_diff(i)))rnrn End Ifrn rs.Closern Set rs = NothingrnNextrnrn[/code]rnrn如上,一个循环,要写一个条件语句rnrnif d_kcpd>0 then rn......rnend ifrnrn这个d_kcpd>0,是指上面所有循环的 d_kcpd都满足条件,有一个不满足就不执行,应该怎么写
请问满足这样条件的Sql语句怎么写?谢谢
有这样一个Sql语句:rnselect top 50 * from biz where shenhe=1 and title like '%商机%' or main like '%商机%' order by sj descrn我要实现的结果是当title或者main字段满足筛选字段的情况下,shenhe字段都要为1,象我上面的Sql语句是错误的 结果中会包括shenhe为0的记录。rn要实现这样结果的Sql语句应该怎样写呢?问题解决,马上给分 谢!
if(条件) sql语句怎么写?
sqlserver中 if(条件)sql语句rn在oracle中不知道怎么写rnrn在sqlserver中这样rnif(select count(*) from talbe)>1 select * from tablern在oracle中怎么写?
一个语句的条件怎么写?
一条更新语句:update 表1 set fIfArrived = 0 where 条件?rnwhere 中的条件来自另一张表单的某条记录的两个字段 rnrn表1rnfproid fLockCargoID fIfArrivedrn 1 2 1rn 2 2 1rn 3 3 1rn 表2rnfproid fLockCargoID fOrderIDrn 1 2 33rn 2 2 33rn 3 3 33rn表2中的fOrderID已知道,如何根据表2中的fproid ,fLockCargoID (她们具有相同的fOrderID)来更新表1中的 fIfArrived?
按条件查询的sql语句怎么写?
表结构: record表: id node userid rn 1 2 78rn 2 3 6rn 3 4 6rn我想实现这样的功能: if(node==2)rn select * from record as a,users b where a.userid=b.id;rn if(node>2)rn select * from record as a,account b where a.userid=b.id;rn请问 这样的sql 或存储过程 该怎么写?rn
急!!!这个SQL语句怎么写啊?
就是有两个表,一个是 AAA (A,B,C,JEHZ),一个是 BBB(A,B,C,JE), rn现在就是要把BBB中 A,B,C 均相同的记录汇总起来,把汇总金额写到 AAA中的 rnJEHZ中去。 rn rn例子: rn BBB 表: rn '01','ss','cc',10 rn '01','ss','cc',15 rn '01','dd','ee',10 rn '01','dd','ee',20 rn则 AAA表应为: rn '01','ss','cc',25 rn '01','dd','ee',30 rn,注意是update,因为AAA表中有记录,只是汇总金额不对,现在要重新算。还有,是 rnsybase 数据库
这个SQL语句怎么写,急!!!
有两个表A,B,它们的主键都为4个(no1,no2,no3,no4)rn要求是rn从A中查询出在b中没有的数据
急!这个SQL语句怎么写呢?
一个数据表,其中有两个字段MyID和MyDate,现在想把MyID按一天来汇总(当天MyId有多少个),比如今天是2001年6月1日,则“Select count(distinct MyId) from Mytable where MyDate='2001-6-1'”即可,这样就可以知道这一天里MyId的数目,但如果按月来汇总,就要把从1号到30号(6月份是30天)的数字累加起来,就要使用30条Select语句,如果是闰年的话,还要考虑2月份的天数。rn请问各位大虾,有没有可能做成一个通用过程(不管是用Delphi处理,还是用存储过程),能实现这个功能呢?比如我在Edit1中输入2001,Edit2中输入6,就能通过程序计算出2001年6月份的汇总数目呢?rn这个问题应该不是很难,但我一直想不出一个比较快捷的方法,主要是日期处理比较麻烦,请帮帮小弟,说些详细点的步骤好吗?送出50分。
急问:这个SQL语句怎么写?
数据库中表名为students,每一记录代表一个学生。其字段包括“院系名称”和“Group_ID”等。“Group_ID”是指把学生分组后得到的组序号。其值为1,2,3,...rn每个组可能包括若干个学生。rn现在我想1.查询出某系(比如“化学系”,其组序号可能在34--48之间)的学生中组序号最低的一组学生。应该怎么写SQL语句?rn 2.再查询组序号第二低的一组学生,又应怎么写?rn
这个SQL语句怎么写?急!
数据表格:rn院系 学号 应收 实收 交费时间rn理工学院 1001 9000 4000 2005-01-20rn理工学院 1001 9000 5000 2005-01-24rn农学院 1002 9000 2000 2005-01-20rn农学院 1002 9000 7000 2005-01-24rn农学院 1003 9000 9000 2005-01-20rn理工学院 1004 9000 9000 2005-01-20rn理工学院 1005 9000 9000 2005-01-20rnrn说明:这是一个学生收费的记录表,允许学生多次交费,表中1001号学生就分两次交足了9000元学费。rn问题:rn要求用一条sql语句统计出某个时间点以前的某个院系的欠费学生的人数,比如2005-01-23以前理工学院的欠费人数为1人,2005-01-25以前理工学院的欠费人数为0人。 rnrn请大家帮忙,多谢!rn
急!!这个Sql 语句怎么写?
源表rnTable Arn Col1 Col2 Col3rn A 1 300rn A 2 200rn A 3 100rn B 1 1000rn B 2 2000rn B 3 3000rnrn如何用一个Sql对Col1分组,并取的Col2值最大对应的Col3的值rn 结果rn rn Col1 Col3rn A 100rn B 3000rn
这个SQL语句怎么写?急--------!!!!
现在表的结构是rnrn字段1 字段2 字段3 字段4rnAA A 1 aarnAA A 1 aarnAA B 1 aarnAB C 1 bbrnrn我想要的结果是rn字段1 字段2 字段3 字段4 个数rnAA A 1 aa 2(字段1,2,3,4相等的个数,比如上表的1,2行)rnAA B 1 aa 1rnAB C 1 bb 1 rnrn可不可以用一个SQL语句查出这样的结果呢?不想用变量算了。rnrn谢谢
急!!! 这个SQL语句怎么写~~~~~~~~~十万火急!!!
一个ACCESS数据库 aa 中有a,b,c 3张表,3张表中都有 bb 字段。请问,如果想实现 在 aa 库中搜索 bb字段 包含 ccc 内容(ccc是另一页提交过来的文本型变量)的所有数据,这个SQL语句怎么写???
这个SQL语句怎么写?急!!
我两个表,一个是关于文章的表(含有作者字段),另外一个是作者资料的表,现在我是要统计在这个作者表中的每个人所发表的文章数是多少,在文章表里有些作者字段是包含多个作者的,我是想用like写模糊查询,怎么写??rnrnrnselect writer,count(*) from 文章表 where writer like ...这里怎么写...
急求:这个SQL语句怎么写?
两个表:rn表arnOrderID buyer City Addressrn0101 张 北京 dsfsfrn0102 王 上海 sfsdfrn0103 李 北京 sdfsfdrn0104 陈 天津 dfsfsfrnrn表brnrnOrderID subNamern0101 北京分店rn0102 上海分店rn0103 北京分店rn0104 天津分店rnrn表a是主表,在表a中如何用SQL语句选出subName=北京分店的所有订单?
这个 sql语句怎么写(急)
有表A,B,Crn表A结构如下 公司id,行业rn表B结构如下 参保人id,公司idrn表c结构如下 外来人员id,公司idrn现在需要显示如下结构rn行业 公司数量 参保人员数量 外来人员数量rnrnrnrnrn总数rn请各位大侠帮帮忙,谢谢
这个SQL语句怎么写?急!!!!
有一张表如: TableA(id,name,.....)rn另有一张表: TableB(id,name,.....)rn两张表通过id相联,现在要实现,如何让TableA表中的name与TableB表中的name一样?rn这个语句该怎么写?
这个sql语句怎么写? 急。。。等
我有个表A 3列 a, b, c 其中a 是日期型, b,c 都是数字rn例如原来数据为rn2003-10-30 10 20rn2003-10-31 25 29rnrn现在变为rn2003-10-30 10rn2003-10-30 20rn2003-10-31 25rn2003-10-31 29rn rn应该怎么写此sql语句?
这个SQL语句怎么写,急急急??????????
数据库中有出生年月,利用它用SQL语句写出到龄退休人的列表(男60岁,女55岁)、并且是让退休时间提前三个月的表
这个sql语句该怎么写,急!!!!
根据班级分组,统计平均分和不及格的个数.rn我的想法是这样的.rnSelect avg(testScore) as 平均分, count(testScore<600) as 不及格数 , from [Person] Group by Classrn但是count(testScore<600)这样写好象不对 ,谁告诉我一下实现这样的效果sql语句该怎么写,急,感谢!!!!
请问这个sql语句怎么写?(急)
表A:rn id name statuern 001 aaa arn 002 bbb brn 003 ccc crn 004 eee ernrn表B:rn id cert_fee recive_date rn 001 10 2004-1-1rn 002 20 2004-2-2rn 004 30 2004-3-3rnrn结果:rn id name statue cert_fee recive_datern 001 aaa a 10 2004-1-1rn 002 bbb b 20 2004-2-2rn 003 ccc c rn 004 eee e 30 2004-3-3rnrn我想得到上面的结果,请问怎么写?谢谢!rn
这个sql语句应该怎么写??急!!!
一个名为Friend的表,内有如下字段和内容:rnPersonID FriendIDrn1 2rn1 3rn2 4rn4 5rn6 7rnfriend可传递,上表表示1、2、3、4、5互相为朋友,6、7互相为朋友。rn试用SQL语句查询出指定ID没有传递关系的所有朋友列表,如:指定ID为5得到的结果为2、3、4、1。rn
这个sql语句怎么写,急
SELECT p.ProjectID,p.ProjectCode,p.ProjectName,rnTotal_Amt = CASE p.Amt_Revised WHEN 0 THEN p.Amt_Original ELSE p.Amt_Revised END ,rn(CASE p.Amt_Revised WHEN 0 THEN p.Amt_Original ELSE p.Amt_Revised END-a.Collected) NotCollectedrnFROM tbProject p,(rn SELECT SUM(PaymentCollected) Collected,ProjectID rn FROM tbFinanceItem rn GROUP BY ProjectID)a rnWHERE p.ProjectID=a.ProjectID AND p.ProjectStatus=1rn然后有可能某个p.ProjectID在tbFinanceItem表中还无数据,这时也要显示,并把NotCollected 设为为p.Amt_Original. 这该怎么写呢?
这个sql的语句怎么写? 急
sql="update personnel set picture="1" and picture_patch=patchrn where name=session("username")"rnrn我想更新表personnel 中字段picture和picture_patch ,rn给字段picture_patch的值是字符串patch, patch是由前面的语句赋值的,不是固定的rnrn这个sql 语句怎么写啊?
请教这个SQL语句怎么写??
现在又这么几张表rnboxlogbymonth4,boxlogbymonth5,boxlogbymonth6,boxlogbymonth7,boxlogbymonth8rn这几张表的意思就是把4到8月的数据分开存放rn这几张表的结构都是一样的rn表结构为:imsi,logindate,originid,citycode,cstcodern现在我想查询一个结果,我想查询时间跨度大些,比如说我要查5.21-8.21的数据rn请问这个语句要怎么写?这么把这些表连到一块查询呢?这些表中的数据量非常大,要怎么写这个语句呢?
请教高手这个sql语句怎么写?
access中有四个表:rn表arnid xm dy xqrn1 张三 北区 一区rn2 李四 南区 二区rn3 王五 南区 一区rn...rn表brnid jiemu jiagern1 节目1 20rn2 节目2 30rn3 节目3 50rn...rn表crnid parent_zhongduan zhongduan jiemu_id rn1 null 终端100 1rn2 终端100 终端130 2rn3 终端100 终端140 1rn4 null 终端150 1rn5 终端150 终端160 3rn...rn表drnid user_id zhongduan_idrn1 1 终端100rn2 1 终端130rn3 1 终端140rn4 2 终端150rn5 2 终端160 rn....rn现在想实现的查询是:rn姓名 住址 缴费金额rn张三 北区一区 60rnrn缴费金额的计算公式是(以张三为例):rn他拥有三个终端:终端100、终端130、终端140rn其中终端100是父终端,因为他的parent_zhongduan是null,,他拥有节目1,计20元;子终端130(因为parent_zhongduan是他的父终端),他拥有节目2,计30元;子终端140也拥有节目1,但他因为是子终端,计20/2=10元(公式是固定的);这样20+30+10=60元。rnrn请教各位大虾高手!rnrnrnrnrnrnrn
请教,这个sql语句怎么写?
如何选出所有这样的记录rn01100rn0110000rn01100000rn01100000000rn0110.....0rnrn前面得串011不变,后面的串由n个相同的0组成
请教这个SQL语句怎么写?
表1:rncreate table audit (rn code varchar(16) not null,rn person_id1 varchar(16) null,rn person_id2 varchar(16) null,rn person_id3 varchar(16) null,rn person_id4 varchar(16) null,rn person_id5 varchar(16) null,rn constraint pk_audit primary key (code)rn)rn表2:rncreate table person (rn person_id varchar(16) not null,rn person_name varchar(16) not null,rn constraint pk_person primary key (person_id)rn)rn audit表中的person_id1等字段是person表中的主键person_id,现在查询结果想把person_id1等字段用person表中的person_name代替更有意义,写了一个语句,可自己觉得有问题,见下:rnselect t.person_id1,v.person_name,t.person_id2,v2.person_name,t.person_id3,v3.person_name,t.person_id4,v4.person_name,t.person_id5,v5.person_name rnfrom audit t rnleft join person v on( t.person_id1= v.person_id) rnleft join person v2 on(t.person_id2=v2.person_id) rnleft join person v3 on(t.person_id3=v3.person_id) rnleft join person v4 on(t.person_id4=v4.person_id) rnleft join person v5 on(t.person_id5=v5.person_id) rnwhere t.code='501'rn 感觉上面的语句执行起来会有问题,有没有简洁的写法,请高手赐教!!
请教大家这个sql语句怎么写??
我想写一个sql语句 样子是rnselect sum(a) as c,sum(b) as d,(c+d) as e from tablern但是我这样写有问题,所以我请教应该怎么写呢??rnrnrn
请教这个SQL语句怎么写
假设一个表中有一个字段不是主键,所以应该有重复的值,现在想写SQL语句找出所有重复的值,怎么查找?
请教这个功能的sql语句怎么写?
表1:(customer)两个字段:oper_id ,oper_namern表2:(man)两个字段:oper_id,oper_namern表1的oper_id对应表2的oper_id,我现在要在表1的oper_name,加入相应的(oper_name)值,用sql语句怎么实现
请教:这个SQL语句怎么写?
现有2个表A和B,其中A表比B表多2个字段,我想把B表中数据一次copy到A表,同时把A表多余的2个字段设置我需要的值,如果2个表一样我用insert into a select * from b可以实现,上面这种情况,请问怎么实现才好!rnrn 实际情况是这样的我想把三个数据库中的B表合并到一个数据库A表中间,多余的字段是用来标识数据属于那个数据库的rn
请教,这个SQL语句怎么写
在表A中,有字段:rn name age sex salary bouns...rn liu 25 male 2000 rn zhang 26 fmale 2200 rn wu 30 male 4000rn........rn我想给bouns字段赋值,其值等于相应salary值的1.5倍,请问该怎么写啊?效果如下rn name age sex salary bouns...rn liu 25 male 2000 3000rn zhang 26 fmale 2200 3300rn wu 30 male 4000 6000rn.........
请教这个sql语句怎么写
不知道这个功能可不可以在一个sql语句中完成:rn 有两个表a ,b . a表无主健 ,b表‘字段2’是主健rn a(字段1,员工编码,次数) rn b(字段2,员工编码)rnrn 表a中也有数据,但第3个字段还为空,我要根据b表中记录条数更新a表'次数‘字段。rn 如: a 表数据如下:id1,001,0rn id2,002,0rn b表数据如下: id3,001rn id4,001rn id5,001rn id6,002rn 我要根据a表中的员工编码001 ,在b表中计算出员工编码为001的记录的条数,把记录条数更新到a表的‘次数’字段。rn 处理后的a表数据应该为:rn id1,001,3rn id2,002,1rn rn
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池