列执行MSSQL Server 处理Null
题记:写这篇博客要主是加深自己对列执行的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢。
Null,在T-SQL中是个很诡异的内容,它的处置方式不按常规来走,以至于我们在处置数据的时候,经常会变的手足无措,这里探讨下,null与字符类型拼接的情况。
以下语句:
SELECT custid, country, region, city,country + N',' + region + N',' + city AS location
FROM Sales.Customers;
执行结果:
custid country region city location
----------- --------------- ------ --------------- -------------------
1 Germany NULL Berlin NULL
2 Mexico NULL México D.F. NULL
3 Mexico NULL México D.F. NULL
4 UK NULL London NULL
5 Sweden NULL Luleå NULL
6 Germany NULL Mannheim NULL
7 France NULL Strasbourg NULL
8 Spain NULL Madrid NULL
9 France NULL Marseille NULL
10 Canada BC Tsawassen Canada,BC,Tsawassen
11 UK NULL London NULL
12 Argentina NULL Buenos Aires NULL
13 Mexico NULL México D.F. NULL
14 Switzerland NULL Bern NULL
15 Brazil SP Sao Paulo Brazil,SP,Sao Paulo
16 UK NULL London NULL
17 Germany NULL Aachen NULL
18 France NULL Nantes NULL
19 UK NULL London NULL
20 Austria NULL Graz NULL
...(91 row(s) affected)
location列很多为null这是因为country + N',' + region + N',' + city中的三个字段很多是null,此时如果我们希望值为null的列直接疏忽,而不是将整个表达式赋值为null。
生命不是一篇"文摘",不接受平淡,只收藏精彩。她是一个完整的过程,是一个"连载",无论成功还是失败,她都不会在你背后留有空白;生命也不是一次彩排,走得不好还可以从头再来,她绝不给你第二次机会,走过去就无法回头。
可做如下处置:
SET CONCAT_NULL_YIELDS_NULL OFF;
SELECT custid, country, region, city,country + N',' + region + N',' + city AS location
FROM Sales.Customers;
执行结果:
custid country region city location
----------- --------------- ------ --------------- -------------------
1 Germany NULL Berlin Germany,,Berlin
2 Mexico NULL México D.F. Mexico,,México D.F.
3 Mexico NULL México D.F. Mexico,,México D.F.
4 UK NULL London UK,,London
5 Sweden NULL Luleå Sweden,,Luleå
6 Germany NULL Mannheim Germany,,Mannheim
7 France NULL Strasbourg France,,Strasbourg
8 Spain NULL Madrid Spain,,Madrid
9 France NULL Marseille France,,Marseille
10 Canada BC Tsawassen Canada,BC,Tsawassen
11 UK NULL London UK,,London
12 Argentina NULL Buenos Aires Argentina,,Buenos Aires
13 Mexico NULL México D.F. Mexico,,México D.F.
14 Switzerland NULL Bern Switzerland,,Bern
15 Brazil SP Sao Paulo Brazil,SP,Sao Paulo
16 UK NULL London UK,,London
17 Germany NULL Aachen Germany,,Aachen
18 France NULL Nantes France,,Nantes
19 UK NULL London UK,,London
20 Austria NULL Graz Austria,,Graz
...(91 row(s) affected)
文章结束给大家分享下程序员的一些笑话语录: 有一天,一个男人穿越森林的时候,听到一个细微的声音叫住他。他低头一看,是一只青蛙。
“如果你亲我一下,我会变成一个美丽的公主哦。”男人一言不发,把青蛙捡起来,放入口袋。
“如果你亲我一下,我会变成一个美丽的公主哦。而且,我会告诉我遇到的每一个人,你是多么聪明和勇敢,你是我的英雄。”男人把青蛙拿出来,对着它微微一笑,又把它放回口袋。
“如果你亲我一下,我会变成一个美丽的公主,然后我愿意成为你的爱人一星期。”男人又把青蛙拿出来,对着它微微一笑,把它放回口袋。
“如果你亲我一下,我会变成一个美丽的公主,然后我愿意成为你的爱人一年,而且你可以对我做任何事。”再一次,男人把青蛙拿出来,对着它微微一笑,又把它放回口袋。
最后,青蛙无力地问:“我开出了这么好的条件,为什么你还不肯吻我?”男人说:“我是一个程序员,我可没时间和什么公主鬼混。不过,拥有一个会说话的青蛙,倒是蛮酷的。”
--------------------------------- 原创文章 By
列和执行
---------------------------------
列执行MSSQL Server 处理Null相关推荐
- MS-SQL Server 基础类 - SQL语句
网址收藏夹 免费申请! 首页 |收藏夹 | 笑话 | 贴吧 | 交友 | 留言 | 软件 | 超市 | 网页特效 | 酷站导航 | 论坛 新闻 | 同学录 | 图片 | 跑商 | 动画 | 音乐 ...
- 国际化使用UTF-8造成数据库MSSQL Server 2000/2005存储乱码的分析
看了许多网上使用MSSQL Server 2000/2005使用UTF-8造成数据库存储乱码的描述,也说一下自己做的一个国际化项目的经验. 这个项目描述: 架构:VC++的ATL Server进行开发 ...
- sql server 加密_列级SQL Server加密概述
sql server 加密 This article gives an overview of column level SQL Server encryption using examples. 本 ...
- distinct作用于后面所有的列吗_InnoDB索引允许NULL对性能有影响吗
谈谈InnoDB辅助索引的几个特征. 阅读目录 0. 初始化测试表.数据1. 问题1:索引列允许为NULL,对性能影响有多少 结论1,存储大量的NULL值,除了计算更复杂之外,数据扫描的代价也会 ...
- Tomcat5+Mssql server 2000数据库连接池配置
Tomcat相信大家已经很熟悉了,作为一种免费而强大的java web server,得到了很多java爱好者的青睐,最新版本的tomcat5支持servlet2.4和jsp2.0,今天我将采用Tom ...
- [干货来袭]MSSQL Server on Linux预览版安装教程(先帮大家踩坑)
前言 昨天晚上微软爸爸开了全国开发者大会,会上的内容,我就不多说了,园子里面很多.. 我们唐总裁在今年曾今透漏过SQL Server love Linux,果不其然,这次开发者大会上就推出了MSSQL ...
- linux下使用odbc连接mysql_Linux环境下通过ODBC访问MSSql Server
为了解决Linux系统连接MSSql Server的问题,微软为Linux系统提供了连接MSSql Server的ODBC官方驱动.通过官方驱动,Linux程序可以方便地对MSSql Server进行 ...
- apexsql使用方法_使用ApexSQL审核执行SQL Server审核
apexsql使用方法 This is the last article, but not least, in the SQL Server Audit series. In this series ...
- PHP连接MSSQL Server的类
/***************************************************************** 大白菜芯收藏类之 PHP连接MSSQL Server类 由于 ...
最新文章
- 浅谈 ThreadLocal
- python在哪里写代码比较适合-程序员面试被要求手写代码,你与顶级程序员的差别在哪?...
- 图像分析:投影曲线的波峰查找
- 1、cocos2dx开发学习第一篇-项目工程的创建
- Java实现图片去噪和灰度的类
- Linux数据报文接收发送总结2
- Atitit截屏功能的设计解决方案
- 银行有没有必要建立数据中台?看看这些架构师和技术总监怎么说
- 关于NLP相关技术全部在这里:预训练模型、信息抽取、文本生成、知识图谱、对话系统...
- 数学和计算机竞赛,数学奥赛VS信息学奥赛,数学基础扎实的孩子
- 十天征服单片机百度云_51单片机 郭天祥十天学会单片机教学视频
- opencv连接大华摄像头
- Linux 克隆虚拟机引起的“Device eth0 does not seem to be present, delaying initialization”
- android 双向进度条,Android自定义双向进度条
- ElasticSearch常用语法大全
- 易买网更多新闻代码_《女神异闻录5》新网站源代码内藏玄机 4月25日有更多情报...
- 矩阵理论——内积空间
- componentWillUnmount父子组件触发先后
- 出现Whitelabel Error Page的解决方法(持续更新带图并总结了其他博文)
- python 日期格式只取年月_python如何只获取日期