SQL Sever 学习系列之三

SQL Server 学习系列之一(薪酬方案+基础)

SQL Server 学习系列之二(日期格式问题)

        五、经理今天刚谈到with的用法(with的类似用法在delphi中有所体现),在资料文档看到了这一段如下主要体现一个关键字pivot(这是首次在武汉三佳医疗有限公司面试开发岗时遇到的,虽过去一段时间还是记忆犹新),摘抄于此,备查:
 use master
--九九乘法表
with cte1 as
(
select top 9 ROW_NUMBER()over(order by getdate())as RN from sysobjects
)
,cte2 as
(
select A.RN,B.Va,ROW_NUMBER()over(PARTITION by RN order by getdate())as RC
from
(select * from cte1)as A
outer apply(select case when A.RN<=RN
then
(ltrim(A.RN)+'X'+ltrim(RN)+'='+LTRIM(A.RN*RN))
else '' end as Va
from cte1 ) as B
)
select * from cte2 a
pivot
(
max(Va)
for RN in([],[],[],[],[],[],[],[],[])
)as B

结果如图:

六、以下程序:1)比较select和print的区别;

                  2)看出用isnull的好处(确切地说保证计算的正确性——将“未赋值”(不是指赋空值)转换为相应的值)(类似还有一个关键字coalesce)
 declare
@a int,
@w decimal(2,1),
@m decimal(2,1),
@q char(3)
set @a=null
set @w=3.12
set @q=null
set @m=3.15
print @m --3.2
select @m --3.2
select @a,@w,@q --null 3.1 null
print @a --无
select @a+@w --null
select ISNULL(@a,0)+ISNULL(@w,0) --3.1
print @a+@w --null
print ISNULL(@a,0)+ISNULL(@w,0) --3.1

结果如图:

七、领悟count(*)和count(字段)的含义,null和‘’还是很有区别的。

 select COUNT(*) from mchk where psfx not like ''                            --
select COUNT(*) from mchk --12182 -----三数相差637(psfx为null)
select COUNT(*) from mchk where psfx is null --
select COUNT(*) from mchk where psfx is not null --
select COUNT(*) from mchk -- select COUNT(psfx) from mchk where psfx like '' --
select COUNT(psfx) from mchk where psfx not like '' --
select COUNT(psfx) from mchk -- select COUNT(psfx) from mchk where psfx is null --
select COUNT(psfx) from mchk where psfx is not null --
select COUNT(psfx) from mchk --

上述说明psfx没有赋任何值的有637(12182-11545)条记录。这个结果验证可以用isnull()或者coalesce()函数。(截图略)

八、sql语句查看一个数据库的位置或者查看有多少实例?

 --sql语句查看一个数据库的位置
select name,filename,crdate,cmptlevel,version
from master.dbo.sysdatabases

结果如图:

SQL Sever 学习系列之三的更多相关文章

  1. SQL Sever 学习系列之二

    SQL Sever 学习系列之二 SQL Server 学习系列之一(薪酬方案+基础) 四.有关时间输出问题      select GETDATE() 日期时间    ----显示为:2013-07 ...

  2. SQL Sever 学习系列之一

    SQL Sever 学习系列之一 本学习系列,从实际工作需要中积累,对于一个新手而言,写出几条漂亮的查询语句,应该是可以受启发的. 一.问题的需求是:员工薪酬发放,现有资金能发放多少人,哪些人应得? ...

  3. SQL Server 学习系列之六

    SQL Server 学习系列之六 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...

  4. SQL Server 学习系列之五

    SQL Server 学习系列之五 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...

  5. SQL Server 学习系列之四(SQL 内幕)

    SQL Server 学习系列之四(SQL 内幕) SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL ...

  6. Sql Server来龙去脉系列之三 查询过程跟踪

    我们在读写数据库文件时,当文件被读.写或者出现错误时,这些过程活动都会触发一些运行时事件.从一个用户角度来看,有些时候会关注这些事件,特别是我们调试.审核.服务维护.例如,当数据库错误出现.列数据被更 ...

  7. CAN总线学习系列之三——CAN控制器的选择

    CAN总线学习系列之三——CAN控制器的选择 在进行CAN总线开发前,首先要选择好CAN总线控制器.下面就比较一些控制器的特点. 一些主要的CAN总线器件产品 制造商 产品型号 器件功能及特点 Int ...

  8. 【SQL Server 学习系列】-- sql 随机生成中文名字

    原文:[SQL Server 学习系列]-- sql 随机生成中文名字 ,) )) -- 姓氏 ,) )) -- 名字 INSERT @fName VALUES ('赵'),('钱'),('孙'),( ...

  9. 大数据学习系列之三 ----- HBase Java Api 图文详解

    版权声明: 作者:虚无境 博客园出处:http://www.cnblogs.com/xuwujing CSDN出处:http://blog.csdn.net/qazwsxpcm 个人博客出处:http ...

随机推荐

  1. vi高级命令集锦

    .交换两个字符位置 xp .上下两行调换 ddp .把文件内容反转 :g/^/m0/ (未通过) .上下两行合并 J .删除所有行 dG .从当前位置删除到行尾 d$ .从当前位置复制到行尾 y$ 如 ...

  2. Docker容器技术-创建一个简单的Web应用

    一.创建一个简单的Web应用 1.identicon 基于某个值而自动产生的图像,这个值是IP地址或用户名的散列值. 用途: 通过计算用户名或IP地址的散列值,在网站上提供用于识别用户的图像,以及自动 ...

  3. Windows10在待机状态时会卡屏的解决方案

    问题:Windows10在待机时,会出现卡屏(鼠标.键盘都无法操作,只能重启电脑),区别于平时我们看得比较多的花屏.蓝屏.黑屏. 原因:经过一段时间的待机,Windows10会进入到降电节能模式,由于 ...

  4. Python的装饰器实例用法小结

    这篇文章主要介绍了Python装饰器用法,结合实例形式总结分析了Python常用装饰器的概念.功能.使用方法及相关注意事项 一.装饰器是什么 python的装饰器本质上是一个Python函数,它可以让 ...

  5. HTML5 画布canvas

    SVG的<defs> <symbols> 元素用于预定义一个元素使其能够在SVG图像中重复使用 <svg xmlns="http://www.w3.org/20 ...

  6. WEB开发中常见漏洞

    1.sql注入 SQL注入在黑客领域是一种非常常见的攻击手段,大家应该都听说过很多数据泄漏的案例,其中大部分都是采用SQL注入来获取数据的. SQL注入一般是前端向后台提交数据的时候,在数据中加入SQ ...

  7. java中大数类的学习

    java中提供了大数类BigInteger和BigDecimal分别表示大整数类和大浮点数类,这两个类都在java.math.*包中,因此每次必须在开头处引用该包. 一.BigInteger构造函数: ...

  8. svn working copy locked的解决方法

    在使用svn更新或提交代码时,会报"svn working copy XXX locked"的错误,利用svn客户端工具TortoiseSVN的cleanup也不能解决问题. 我们 ...

  9. Spring学习之xml配置Bean总结

    学习Spring时,我用的是Maven来管理jar包,先看看maven的pom.xml: pom.xml <project xmlns="http://maven.apache.org ...

  10. poj 2116 Death to Binary? 模拟

    Death to Binary? Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 1707   Accepted: 529 D ...