MS-SQL SERVER
灬重来灬
这个作者很懒,什么都没留下…
展开
-
UNION ALL 命令和 UNION 命令
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。UNION ALL 命令和 UNION 命令几乎是等效的,不过 UNION ALL原创 2012-03-08 16:34:02 · 398 阅读 · 0 评论 -
多行数据转换成一个字符串
select STUFF( (select ','+UserID FROM T_WorkFlow_MultiFlowInfo a WHERE b.FlowID =a.FlowID and a.isWork=0 and a.Flo原创 2017-01-12 15:27:49 · 610 阅读 · 0 评论 -
利用spt_values求2个时间段内所有的日期。主要用于关联数据。
select convert(varchar(10),dateadd(day,number,'2016-05-01'),120) as DTimefrom master..spt_values where datediff(day,dateadd(day,number,'2016-05-01'), '2016-05-31')>=0and number>=0 and type='p转载 2016-05-31 15:55:05 · 437 阅读 · 0 评论 -
查看与某一个表相关的视图、存储过程、函数
查看与某一个表相关的视图、存储过程、函数select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'转载 2013-10-17 11:31:57 · 1411 阅读 · 0 评论 -
SQL删除所有重复数据。
初始化数据:IF object_id('tempdb..#a') IS NOT NULL BEGIN DROP TABLE #a END Select '11' as A,'22' as B,'33' as C into #原创 2015-08-10 10:58:31 · 392 阅读 · 0 评论 -
将查询到的结果拼接成字符串输出
SELECT AppID, ( SELECT ',' + UserID FROM [T_sys_UserInfo] t1 WHERE AppID = [T_sys_UserInfo].AppID FOR XML PATH('') ) AS UserID, ( SELECT原创 2014-12-05 15:02:28 · 1419 阅读 · 0 评论 -
SQL当修改表的时候,必须重新编译与之相关联的视图。
SQL当修改表的时候,必须重新编译与之相关联的视图。不然会出现视图字段名偏移,字段名不全等问题。原创 2013-05-02 16:11:03 · 884 阅读 · 0 评论 -
删除重复数据的触发器.sql
CREATE trigger [dbo].[tri_Table_Ins]on [dbo].[T_tab]for insertasdeclare @count intSelect @count=count(*) From [dbo].[T_tab] T,Inserted A where A.Title=T.Titleif @count >1beginDelete Fr原创 2013-02-05 14:41:07 · 988 阅读 · 0 评论 -
年假假统计
第一步:创建工作日表T_Sys_WorkDate,字段包括MyDate datetime,MyWeek nvarchar(50),IsWork int第二步:往工作日表插入初始数据(默认周六日为非工作日),可以用自定义函数F_AddWorkDate,插入数据,函数如下:(该函数出于论坛某牛人)create function [dbo].[F_AddWorkDate](@dt1原创 2012-10-27 17:34:56 · 790 阅读 · 0 评论 -
SQL2000 行转列
IF object_id('tempdb..#a') IS NOT NULL BEGIN DROP TABLE #a END SELECT AppUnitName ,SenderDept,原创 2012-08-24 15:40:39 · 1254 阅读 · 0 评论 -
获取某一个表的所有字段
一列显示所有字段select name from syscolumns where id=object_id('table')转载 2012-06-15 15:57:15 · 359 阅读 · 0 评论 -
随机取出10条数据
Select top 10 * from tableorder by newid()转载 2012-06-15 15:21:23 · 816 阅读 · 0 评论 -
Sql查询插入临时表
if object_id('tempdb..#a) is not nullBegin drop table #aEnd Select * into #a From table where 条件原创 2012-06-13 10:41:45 · 4844 阅读 · 0 评论 -
SQL获取下个一个自动生成的编号
--返回当前的最后自动编号 :SELECT IDENT_CURRENT('S_Resource_SuppliesRecord')--返回增量值 :SELECT IDENT_INCR('TableName')--返回种子值: SELECT IDENT_SEED('TableName')--返回下一个自动编号: SELECT IDENT_CURRENT('S转载 2012-06-11 14:17:40 · 654 阅读 · 0 评论 -
指定日期前一天的数据
时间函数:DATEPART()例子:昨天一天的数据,时间字段变量ieCreatetimeselect * from tab1where DATEPART(Y,GETDATE()) -DATEPART(Y,ieCreationTime)=1---- 今天是一年中的第几天-变量是一年当中的第几天=1,表示昨天 and DATEPART(YYYY,GETDATE())=DATEPA原创 2012-04-10 19:34:45 · 1097 阅读 · 0 评论 -
牢记!SQL Server数据库开发的二十一条军规(SQL收藏)
如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS)。 在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计。这些经验来自我过去几年中经受的教训,一直来,我看到许多同转载 2012-04-01 15:42:00 · 288 阅读 · 0 评论 -
循环查询无限级的父级
goif object_id('[tbl]') is not null drop table [tbl]gocreate table [tbl]([ClassID] int,[ClassName] varchar(8),[ClassParentID] int)goinsert [tbl]select 1,'信息',0 union allselect转载 2012-03-08 15:54:54 · 563 阅读 · 0 评论 -
行列互换
行转列if not object_id('Class') is null drop table ClassGoCreate table Class([Student] nvarchar(2),[Course] nvarchar(2),[Score] int)Insert Classselect N'张三',N'语文',78 union allselect N'张三转载 2012-03-08 16:27:35 · 373 阅读 · 0 评论 -
执行最慢的SQL语句、总耗CPU最多的前个SQL、平均耗CPU最多的前个SQL
--执行最慢的SQL语句SELECT(total_elapsed_time / execution_count)/1000 N'平均时间ms',total_elapsed_time/1000 N'总花费时间ms',total_worker_time/1000 N'所用的CPU总时间ms',total_physical_reads N'物理读取总次数',total_logical_rea...转载 2018-10-06 15:16:52 · 1328 阅读 · 0 评论