not in子查询中有null值的时候 not in 会失效 但是 in 的子查询中有null的 不会失效…
如果下:TempSalesPriceFixedValues表和SalesPriceFixedValues表,要求查询出在TempSalesPriceFixedValues表中且不在SalesPriceFixedValues表中的记录. select distinct Ctyp from TempSalesPriceFixedValues where Ctyp not in ( select distinct ConditonTypeCode from SalesPriceFixedValues…
最近用select进行数据筛选,碰到下面的这个错误: ---子查询返回的值不止一个.当子查询跟随在 =.!=.<.<=.>.>= 之后,或子查询用作表达式时,这种情况是不允许的. 查询语句为:     SELECT * FROM (SELECT *,(select cfzt from Zc_Cfb where kc.guid=zcguid) AS cfzt FROM Zc_Kcb AS kc WHERE kc.djr LIKE '%11203%' )as t where (cfzt…
目录 1.事故现场 1.1 在使用 Insert into Table2 select * from Table1 将表1的数据插入到表2时,报错如下: 1.2 sql 语句 2.推测 3.解决方案 4.总结 1.事故现场 1.1 在使用 Insert into Table2 select * from Table1 将表1的数据插入到表2时,报错如下: 子查询返回的值不止一个.当子查询跟随在 =.!=.<.<=.>.>= 之后,或子查询用作表达式时,这种情况是不允许的 1.2 s…
在子查询中,如果想实现如下的功能: select lib,count(*),select sum(newsNo) from Table1 group by lib from Tabel1 T1,Table2 T2 where T1.newsNo =T2.newsNo group by lib 就会提示“子查询返回的值不止一个.”的错误,意思是子查询不能返回多个结果,只能返回一个结果. 因此可以改用如下的方式: select lib,count(*),select sum(newsNo) from…
为了实现下述代码,首先得有数据库和相应的表格,本文用的是https://blog.csdn.net/qaz13177_58_/article/details/5575711/中的案例,即先用链接中那些命令创建数据库.生成数据表,然后就有了student,teacher,course,score等表. 最近用select做题,经常碰到下面的这两个错误: 1.子查询返回的值不止一个.当子查询跟随在 =.!=.<.<=.>.>= 之后,或子查询用作表达式时,这种情况是不允许的. 比如针对…
碰到标量子查询中有ROWNUM=1怎么改? select to_date(o.postdate,'yyyymmdd'), (select cur.c_code from cur_tbl cur where cur.c_abbr=o.currencycode) as CusNo, o.dramount, round(o.dramount * (select s.exechangerate / 100 from tcsa.uccexchange s where s.exchangecurrency…
这里的in后面的句子可以理解为or拼接,简单举例即 in (9566,9839,null)可以等价于mgr=9566 or mgr=9839 or mgr=null, not in (9566,9839,null)可以等价于not(mgr=9566 or mgr=9839 or mgr=null)或mgr!=9566 and mgr!=9839 and mgr!=null. 为什么都是or拼接,in可以而not in不可以呢,可以把not in理解为后面的and表达式就知道了,因为mgr=nul…
方一: 以下做法保证数据里面没有NULL值 '') '') '') '') exec sp_executesql N'select ide_code as ''系统编号'',name as ''申请专利调查名称'',more_str01 as ''项目编号'',org_project as ''应用项目'',button_name2 as ''应用情况'',node_status as ''调查进度'' ,CONVERT(char(10),create_time,102)as ''申请日期'',…
背景 今天在日常数据库检查中,发现一SQL运行时间特别长,于是抓取出来,进行优化. 优化前: 耗时:503s 返回:0 SQL代码 SELECT * FROM MM_PAYABLEMONEY_TD P WHERE P.DATATYPE IN ('132', '304', '313', '316', '323', '321', '330', '334', '338', '342', '346', '350', '351', '353', '355', '358', '359', '362', '3…