摘要:一、用到的数据 二、游标概念 我们知道,关系数据库所有的关系运算其实是集合与集合的运算,它的输入是集合输出同样是集合,有时需要对结果集逐行进行处理,这时就需要用到游标。我们对游标的使用一本遵循“五步法”:声明游标—>打开游标—>读取数据—>关闭游标—>删除游标。以下就从这五步对游标的使用进行说明,并
阅读全文
随笔分类 - DataBase
数据库
摘要:一、SQL Server 方法1:master..spt_values --最大2047 SELECT number FROM master..spt_values WHERE number>=1 AND number<=100 AND type='P' 方法2:row_number()over()
阅读全文
摘要:步骤如下: --1.开启远程查询支持 exec sp_configure 'show advanced options' ,1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure --2.链接Excel M
阅读全文
摘要:例2: 生成表如下: 按照vcode进行分组,按照qdate进行降序排列,记录行号rn 将日期减去行号,得到的结果rn连续相同时即为时间连续组 根据vcode和rn分组,得到的count即为连续的天数 通过having即可筛选出连续天数>=3的vcode
阅读全文
摘要:/************************************************************** SQL Server 2012 新增的函数 ***************************************************************/ -- CONCAT ( string_value1, string_valu...
阅读全文
摘要:一、统计语句1、--统计当前【>当天00点以后的数据】SELECT * FROM 表 WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111) ORDER BY da...
阅读全文
摘要:DECLARE @a NVARCHAR(100)= '01,02,04,05,07'; DECLARE @b NVARCHAR(100)= '01,03,04,05,06'; WITH a1 AS ( SELECT CONVERT(XML, '' + REPLACE(@a, ',', '') + '') cxml ...
阅读全文
摘要:示例1:从XML中解析数据到表变量 DECLARE @ItemMessage XML DECLARE @ItemTable TABLE(ItemNumber INT PRIMARY KEY,ItemDescription NVARCHAR(300))SET @ItemMessage=N'<ItemL
阅读全文
摘要:SQL SERVER输出XML;根据FOR XML语句设置输出模式:RAW 、AUTO 、EXPLICIT 、PATH;模式确定产生的XML的形状。 不推荐使用FOR XML选项的XMLDATA指令。如果是RAW 和AUTO模式,请使用XSD生成。在EXPLICIT模式下,没有XMLDATA指令的替
阅读全文
摘要:--下面为多种方法从XML中读取EMAIL DECLARE @x XML SELECT @x = ' dongsheng@xxyy.com 678945546 36575 ' -- 方法1 SELECT @x.value('data(/People/dongsheng/Info[@Name="Email"])[1]', 'varchar(30)') -- 方...
阅读全文
摘要:-- ======================================================T-SQL代码:EXEC master..xp_cmdshell 'bcp 库名.dbo.表名out c:/Temp.xls -c -q -S"serve...
阅读全文
摘要:数据库回滚到时间的的前提: 事务日志完整,数据库在完整恢复模式下进行过一次完整备份,数据库没有进行过还原操作(惨痛教训)。当数据库误操作时,切记冷静,不然问题就是滚雪球, 在不做下一步错误前 可观看该大神的方法:http://blog.csdn.net/dba_hu...
阅读全文
摘要:问题: 经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了。人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题。 遇到这种情况,一般都是没有做备份,不然也不会来发问了。首先要冷静,否则会有更大的灾难。直到你放弃。 解决方
阅读全文
摘要:大家听到“嗅探”这个词应该会觉得跟黑客肯定有关系吧,使用工具嗅探一下参数,然后截获,脱裤o(∩_∩)o 。事实上,我觉得大家太敏感了,其实这篇文章跟数据库安全没有什么关系,实际上跟数据库性能调优有关相信大家有泡SQLSERVER论坛的话不多不少应该都会见过“参数嗅探”...
阅读全文
摘要:1. 语法 开窗函数支持分区、排序和框架三种元素,其语法格式如下: OVER ( [ <PARTITION BY clause> ] [ <ORDER BY clause> ] [ <ROW or RANGE clause> ] ) <PARTITION BY clause> ::= PARTITI
阅读全文
摘要:分类SQL SERVER类型类型说明C#类型精确数字bigint从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。Int64int从 -2^31 ...
阅读全文
摘要:--一句Sql把表结构全部查询出来SELECT表名 = Case When A.colorder=1 Then D.name Else '' End,表说明 = Case When A.colorder=1 Then isnull(F.value,'') Else ...
阅读全文
摘要:execute相信大家都用的用熟了,简写为exec,除了用来执行存储过程,一般都用来执行动态Sql sp_executesql是sql2005中引入的新的系统存储过程,也是用来处理动态sql的,如: exec sp_executesql @sql, N'@count int out,@id varc
阅读全文
摘要:1、区别 通过查看SQL SERVER的帮助文档找到了CUBE 和ROLLUP之间的具体区别: CUBE 生成的结果集显示了所选列中值的所有组合的聚合 ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合 再看看对GROUPING的解释: 当行由CUBE或ROLLUP运算符添加时,该函数将
阅读全文
摘要:先看看语法: {cross|outer} apply再让我们了解一下apply运算涉及的两个步骤:A1:把右表表达式()应用到左表()输入的行A2:添加外部行; 使用apply就像是先计算左输入,然后为左输入中的每一行计算一次右输入。(这一句很重要,可能会不理解,...
阅读全文