我需要将所有输入显示在一列中,但这会显示在多列中。
我尝试过更改语法,但是它不起作用:
ALTER PROCEDURE spStringSplit
@String1 NVARCHAR(255),
@String2 NVARCHAR(255),
@String3 NVARCHAR(255)
AS
BEGIN
SET NOCOUNT ON;
SELECT @String1
SELECT @String2
SELECT @String3
END
GO
EXEC spStringSplit 'a','b','c'
我需要的是
ColName
--------
a
b
c
答案 0 :(得分:1)
如果使用的是SQL Server的最新版本,则可以使用VALUES
。
(语法有点复杂):
SELECT
*
FROM
(
VALUES
( @String1 ),
( @String2 ),
( @String3 )
)
在旧版SQL Server中,您需要使用UNION ALL
:
SELECT
@String1 AS Col1
UNION ALL
SELECT
@String2 AS Col1
UNION ALL
SELECT
@String3 AS Col1