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. 【HackerRank】Gem Stones

    Gem Stones John has discovered various rocks. Each rock is composed of various elements, and each el ...

  2. [POI2008]账本BBB

    题目 BZOJ 做法 明确: \(~~~1.\)为了达到目标分数所取反的次数是固定的 \(~~~2.\)为了满足前缀非负,得增加取反和滚动次数 滚动的次数可以枚举,增加的取反可以通过最小前缀和得到 滚 ...

  3. Django用户注册、邮箱验证实践

    算法流程如下:1)处理用户注册数据,存入数据库,is_activity字段设置为False,用户未认证之前不允许登陆2)产生token,生成验证连接URL3)发送验证邮件4)用户通过认证邮箱点击验证连 ...

  4. Vue.js学习笔记 第六篇 内置属性

    computed属性 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...

  5. vmxnet3 丢包处理

    https://vswitchzero.com/2017/09/26/vmxnet3-rx-ring-buffer-exhaustion-and-packet-loss/

  6. eclipse maven 项目 maven build 无反应

    eclipse maven 项目 使用maven build ,clean 等命令均无反应,控制台无任何输出 1.打开Window --> Preferences --> Java --& ...

  7. RHCE学习笔记 管理1 (第一、二章)

    第一章 命令行访问 1.Ctrl+alt+F2~F6 切到虚拟控制台,ctrl+alt+F1 回到图形界面 2.格式 : 命令 选项 参数 [] 为可选项目            ...表示该项目任意 ...

  8. StringTemplateLoader的用法

    作为一个模板框架,freemarker的功能还是很强大的.在模板处理方面,freemarker有多种形式,最常见的方式是将模板文件放在一个统一的文件夹下面,如下形式:Configuration cfg ...

  9. Luogu-3878 [TJOI2010]分金币

    这题和在我长郡考试时的一道题思路差不多...考虑折半搜索,预处理左半边选的方案所产生的数量差值\(x\)以及价值差值\(y\),把\(y\)扔到下标为\(x\)的set里面,然后在搜索右半边,每搜出一 ...

  10. JAVA 写中文字符串到指定文件 中文乱码 问题解决

    之前试过下面代码里面的注释掉的 方法,都不行,后来想到了不如指定编码格式试试,果真可以了. String as= “中文字符”; //byte[] b = as.getBytes(); try{ Fi ...