易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server 行列转换

在SQL SERVER中,有时需要合多列值到行的需求,常见的方法有:1.创建自定义函数,2.使用游标法进行字符串合并。3.使用临时表实现字符串合并。 数据: DEPTNO EMPS
------ ----------
10 CLARK
10 KING
10 MILLER
20 SMITH
20 ADAMS
20 FORD
20 SCOTT
20 JONES
30 ALLEN
30 BLAKE
30 MARTIN
30 JAMES
30 TURNER
30 WARD
期望结果:
DEPTNO EMPS
------- ------------------------------------
10 CLARK,KING,MILLER
20 SMITH,JONES,SCOTT,ADAMS,FORD
30 ALLEN,WARD,MARTIN,BLAKE,TURNER,JAMES
1.xmloutput---------------------------------------
SELECT *
from(
SELECT DISTINCT
deptno
from emp
)A
OUTER APPLY(
SELECT
[values]= STUFF(REPLACE(REPLACE(
(
SELECT ENAME from emp N
WHERE deptno = A.deptno
FOR XML AUTO
), '', ''), 1, 1, '')
)N
 
2.---using CTE----------------------------------------
--Creating a Delimited List from Table Rows
-------------------------------------------------------
with x (deptno, cnt, list, empno, len)
as (
select deptno, count(*) over (partition by deptno),
cast(ename as varchar(100)),
empno,
1
from emp
union all
select x.deptno, x.cnt,
cast(x.list + ',' + e.ename as varchar(100)),
e.empno, x.len+1
from emp e, x
where e.deptno = x.deptno
and e.empno > x. empno
)
select deptno,list
from x
where len = cnt
order by 1
3.....


相关文档:

SQL Server 2005 镜像功能实现

SQL Server 2005 镜像功能实现
1. 主机、镜像分别MASTER KEY。
主机执行: 
USE master;  
  
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password';  
  
CREATE CERTIFICATE HOST_A_cert WITH  ......

SQL 按周,月,季度,年查询统计数据

//按自然周统计 
select to_char(date,'iw'),sum() 
from 
where 
group by to_char(date,'iw') 
//按自然月统计 
select to_char(date,'mm'),sum() 
from 
where 
group by to_char(date,'mm') 
//按季统计 
select to_char(date,'q'),sum() 
fr ......

(Microsoft SQL Server,错误: 3219)

MSSQL还原数据库失败,提示如下: 还原对与服务器 失败。(Microsoft.SqlServer.Smo) 其它信息: ┃ ┗→执行Transact-SQL语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionsInfo) ┃ ┗→不能选择文件或文件组“……”用于此操作。 RESTORE DATABASE 正在异常终止。(Microsoft SQL Server, 错误:3219) 出现此 ......

SQL Convert 时间截取(转化)样式

内容转自:http://blog.csdn.net/lfzwenzhu/archive/2008/03/06/2153473.aspx
SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06
SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16
SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06
......

如何在未加入域的机器上使用集成认证来登陆SQL Server

一般使用SQL Server的集成认证时,都需要登陆进域,下面介绍一种不需要登陆域就可以使用域用户登陆SQL Server的方法。
SQL Server Management Studio 2005和2008的快捷方式如下图:
  
SQL Server 2008 x64: "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe"
SQL ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号