如何使用语句控牛
空数据,有时被称作“空白”数据,在关系数据库的处理中会造成一些困难。如果一个查询中包含了ORDER BY语句对输出结果进行排序,那么使用升序时,空数据的结果会排在最底部;而使用降序排列时,空数据的结果会排在最顶部。实际上,空数据在Oracle数据库中被当作一个非常大的数值来处理的。
空数据会造成报告难以阅读,假设我们要进行一个简单的人力资源数据查询,需要降序列出所有的员工姓名和佣金(commission)比例,包括没有佣金收入的员工(commission_pct的值是空值),此查询的SQL代码是:
SELECT employee_id, last_name, first_name, commission_pct
FROM employees
ORDER BY commission_pct DESC;
运行这个查询的结果是没有用尽收入的员工会排在最前面,您需要详细查看才能发现到底谁获得了佣金收入。
在Oracle 8i中,有一个不太常用的语法可以修正这个问题,您所需要做的事情就是将以上SQL代码中的最后一样修改为:
ORDER BY commission_pct DESC NULLS LAST;
这样,含有空值的数据行就会排到最后,您也可以在升序排序中使用NULLS FIRST,这样含有空值的数据行会出现在报告的顶部。
如果您还在使用Oracle 8.0版或7.3版,那么您可以使用空值函数(Null Values function (NVL))来实现同样的效果。比如,以下是使用ORDER BY语句的例子:
同比增长58%。 然而 ORDER BY NVL(commission_pct, -1);
这样,还有空值的数据行被当作-1值来进行排序,这样它们就会出现在输出结果的底部,而您也不会看到-1值出现在排序结果中,因为数据库查询是根据空值函数进行操作的,在SELECT语句中,不会显示这些具体的数值。
:德东
查看本文国际来源
天津看白癜风医院长春男科医院哪家医院好
健脾胃中药有哪些
-
巴黎男装周——Y/Project服装品牌时装秀
新华网截图,外代,2022年6年末23日 6年末22日,模特在法国巴黎男装周上展示...
2024-12-27
-
从9988元跌至3469元,折叠台和+骁龙865+2K台和,售价终于亲民了
接合光iPad是现阶段最低端的智能iPad,也是局限性机体台变得低廉的低端机体...
2024-09-08
-
你们都喜欢网红楼梯!我太太踩的坑你们可要避开!最后有整个楼梯的清单,给你们参考!网红楼梯 魅族lip
你们都羡慕网红升降机!我老公踩的坑你们可要避开!之前有整个升降机的清...
2024-07-24
-
抱骨灰盒出来香奈儿,真的不会挨揍吗?
因为众所周知的理由,去年的米兰淑女周暂停协办一年,本年就让尽办法迎来...
2024-06-24
-
通威股份(600438.SH)2022-2024年员工持股计划已完成投资者购买 斥资约54.88
通威持股(600438.SH)发布日前,截至本日前披露日,新公司2022-2024年员工持股计...
2024-06-16
-
华杰专硕第四届大湾区MBA名校大联展在深圳圆满举办!
六年初夏日炎炎,MBA应考们也在热火朝天地取用里!2023高等院校MBA入学措施...
2024-06-08