免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8735 | 回复: 11
打印 上一主题 下一主题

[数据库] 如何去掉存在空值的行 [复制链接]

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-03-20 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-07-23 14:05 |只看该作者 |倒序浏览
通过如下语句,能找出四行为空的记录,详情如下:
select sypxx01,
                 sypph01,
                 (select sgfdw01 from yygla10 where sypjy01 = yygla11.sypjy01) as sypkw01,
                 0 as nypkc01,
                 Sjymx03 as SYPPH02,
                 Djymx07 as dypph03,
                 Njymx06 as nypph04
            from yygla11
           where sypjy01 like 'BK%'
             and sypxx01 > '0'
             and sypph01 > '0'     
             order by sypkw01 desc

通过如下语句:select * from yygla10 where sgfdw01 is null
却找不到任何数据。详情如下:


谁能告诉我,这是什么原因呢,要如何调整,才能显示sypkw01的数据。

02.JPG (17.28 KB, 下载次数: 41)

02.JPG

论坛徽章:
2
15-16赛季CBA联赛之福建
日期:2016-01-12 14:22:3915-16赛季CBA联赛之山西
日期:2016-01-28 17:44:35
2 [报告]
发表于 2012-07-24 23:21 |只看该作者
对于那四条记录,并不是这个项目的值为空,而是yygla10里面不存在匹配的纪录。。

论坛徽章:
2
15-16赛季CBA联赛之福建
日期:2016-01-12 14:22:3915-16赛季CBA联赛之山西
日期:2016-01-28 17:44:35
3 [报告]
发表于 2012-07-25 08:46 |只看该作者
sgfdw01 取得的条件,写到where里,以内连接得方式取得,就能把那四个空白行去掉了。
但是业务上是否确实需要如此,还请确认明确。

论坛徽章:
2
15-16赛季CBA联赛之福建
日期:2016-01-12 14:22:3915-16赛季CBA联赛之山西
日期:2016-01-28 17:44:35
4 [报告]
发表于 2012-07-25 08:53 |只看该作者
写法大致如下
select y11.sypxx01,
                 y11.sypph01 as sypph01,
                 y10.sgfdw01 as sypkw01
                 ……
            from yygla10 y10, yygla11 y11
           where y10.sypjy01 = y11.sypjy01
             and y11.sypjy01 like 'BK%'
             and y11.sypxx01 > '0'
             and y11.sypph01 > '0'     
             order by sypkw01 desc

论坛徽章:
5
天蝎座
日期:2014-01-23 12:27:392015亚冠之德黑兰石油
日期:2015-05-14 13:33:042015年亚洲杯之乌兹别克斯坦
日期:2015-03-06 14:10:38天秤座
日期:2014-01-24 15:03:052015亚冠之德黑兰石油
日期:2015-08-27 13:43:58
5 [报告]
发表于 2012-07-26 08:50 |只看该作者
根据你提出的问题,建议重点了解一下内连接,左外连接,右外连接,全外连接的异同。
可能会有帮助。

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-24 06:20:00
6 [报告]
发表于 2012-07-26 09:14 |只看该作者
确定那是null值?不是空格之类的字符?

论坛徽章:
2
15-16赛季CBA联赛之福建
日期:2016-01-12 14:22:3915-16赛季CBA联赛之山西
日期:2016-01-28 17:44:35
7 [报告]
发表于 2012-07-27 08:59 |只看该作者
应该不是空格,他用的这个工具,显示null和空格时候的背景色好像是不一样的。

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-03-20 06:20:00
8 [报告]
发表于 2012-07-30 13:28 |只看该作者
多谢"水平展开"
你的回答很对
确实是匹配问题,后来把匹配不上的找出来,删除,问题就解决了。

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-03-20 06:20:00
9 [报告]
发表于 2012-07-30 13:29 |只看该作者
你真厉害,一眼就看出了有不匹配的问题。
问题解决了,呵呵,谢谢


   

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-03-20 06:20:00
10 [报告]
发表于 2012-07-30 13:31 |只看该作者
多谢你的建议,我只是当时没有找到是什么原因,并不是不知道你提的
经验不足啊,不过你的回答要转个弯,不过也间接说明了什么原因


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP