我试图在我的SQL Server数据库中合并这样的东西:
[TicketID], [Person] T0001 Alice T0001 Bob T0002 Catherine T0002 Doug T0003 Elaine
进入:
[TicketID], [People] T0001 Alice, Bob T0002 Catherine, Doug T0003 Elaine
我需要在SQL Server和Oracle中执行此操作.
我发现GROUP_CONCATMySQL 的功能完全符合我的需要,但MySQL不是一个选项.
编辑:测试台:
DECLARE @Tickets TABLE (
[TicketID] char(5) NOT NULL,
[Person] nvarchar(15) NOT NULL
)
INSERT INTO @Tickets VALUES
('T0001', 'Alice'),
('T0001', 'Bob'),
('T0002', 'Catherine'),
('T0002', 'Doug'),
('T0003', 'Elaine')
SELECT * FROM @Tickets
Run Code Online (Sandbox Code Playgroud) 是否可以使用表列的ordinal_position选择列数据?我知道使用序数位置是一种不好的做法,但对于一次性数据导入过程,我需要能够使用序数位置来获取列数据.
所以举个例子
create table Test(
Col1 int,
Col2 nvarchar(10)
)
Run Code Online (Sandbox Code Playgroud)
而不是使用
select Col2 from Test
Run Code Online (Sandbox Code Playgroud)
我能写吗?
select "2" from Test -- for illustration purposes only
Run Code Online (Sandbox Code Playgroud) 我可以按SQL中的列数选择特定列吗?就像是
SELECT columns(0), columns(3), columns(5), columns(8) FROM TABLE
Run Code Online (Sandbox Code Playgroud)
谢谢