SQLServer中没有MySQL中的group_concat函数,可以把分组的数据连接在一起. 后在网上查找,找到了可以实现此功能的方法,特此记录下. SELECT a, stuff((SELECT ',' + b FROM #tb WHERE a = t.a FOR xml path('')), 1, 1, '' )AS b from # tb AS t GROUP BY a; 先对a列进行分组,对分组中的b以Xml形式输出,再使用stuff将开关多出的,删掉. 具体实现参考:http:/
首先初始化表和数据 create table t_student( Id INT, Name varchar(), Score int, ClassId INT ); insert into t_student values (,,); insert into t_student values (,,); insert into t_student values (,,); insert into t_student values (,,); insert into t_stud
1.case语句 用于选择语句 SELECT ProductNumber, Category = CASE ProductLine WHEN 'R' THEN 'Road' WHEN 'M' THEN 'Mountain' WHEN 'T' THEN 'Touring' WHEN 'S' THEN 'Other sale items' ELSE 'Not for sale' END, Name FROM Production.Product ORDER BY ProductNumber; 用于u
先前在oracle数据库中接触过over()函数的一系列使用,但是在实际的sql开发中并没有太多的使用,这次在sqlserver的sql拼写中重新遇到这个函数,故结合网上的例子和项目中实际中使用,将其简单用法记录一下,以增强记忆和帮助后来者. 言归正传: 数据库:sqlServer2008R2 英文版 --1.准备数据: CREATE TABLE TEST_OVER_01( a INT, b INT, c CHAR)INSERT INTO TEST_OVER_01 VALUES