Sql server 在SQL Server Management Studio中以多行显示单行(查询结果)
我必须在SQLServerManagementStudio中检查数据表的单行。这个表有很多列。如果将网格中的结果转换为: 是 通缉:Sql server 在SQL Server Management Studio中以多行显示单行(查询结果),sql-server,select,Sql Server,Select,我必须在SQLServerManagementStudio中检查数据表的单行。这个表有很多列。如果将网格中的结果转换为: 是 通缉: Number | 123 Description | bla bla Date1 | xx xx Date2 | yy yy ... 您可以使用此功能的可能重复项。Unpivot会带来所需的结果-但这是一个相当大的查询 Number | 123 Description | bla bla Date1 | x
Number | 123
Description | bla bla
Date1 | xx xx
Date2 | yy yy
...
您可以使用此功能的可能重复项。Unpivot会带来所需的结果-但这是一个相当大的查询
Number | 123
Description | bla bla
Date1 | xx xx
Date2 | yy yy
...
CREATE FUNCTION [dbo].[fnParseStringTSQL] (@string NVARCHAR(MAX))
RETURNS @parsedString TABLE (ID INT IDENTITY(1,1),string NVARCHAR(MAX))
AS
BEGIN
DECLARE @position int
SET @position = 1
SET @string = @string + ','
WHILE charindex(',',@string,@position) <> 0
BEGIN
INSERT into @parsedString
SELECT substring(@string, @position, charindex(',',@string,@position) -
@position)
SET @position = charindex(',',@string,@position) + 1
END
RETURN
END
GO
DECLARE @string1 NVARCHAR(MAX)='Number,Description,Date1,Date2'
DECLARE @string2 NVARCHAR(MAX)='123,bla bla,xx xx,yy yy'
SELECT K.string,K1.string FROM (SELECT ID,string FROM [dbo].
[fnParseStringTSQL](@string1))K
INNER JOIN (SELECT ID,string FROM [dbo].[fnParseStringTSQL](@string2))K1
ON K.ID=K1.ID
SELECT Number , Desci
FROM (
SELECT CAST (Number as varchar) as Number
,CAST(Desc_EN as varchar) as Desc_EN
,CAST (Desc_DE as varchar) as Desc_DE
,CAST(Specification_EN as varchar) as Specification_EN
,CAST(Specification_DE as varchar) as Specification_DE
,CAST(Template as varchar) as Template
FROM dbo.Master
WHERE Number = '10257285'
) as a
unpivot
( Desci for Descs in
(Desc_EN ,Desc_DE, Specification_EN, Specification_DE, Template)
) as b;