对不起,如果标题太可怕了。有一个表T.与列名称,货号,那要么包含我的状态,O,或S.SQL - 查询单独列并根据列数据创建新列
例:
Name Num Status
Bob 1 I
Bob 2 O
Bob 3 O
John 4 I
John 5 S
Joe 6 O
想要的结果看起来像:
Name Num I O S
Bob 1 x
Bob 2 x
Bob 3 X
John 4 X
John 5 X
谢谢!
编辑:后续问题。
Name Num I O S
Bob 1 x
Bob 1 x
Bob 2 X
需要的结果是:
Name Num I O S
Bob 1 X X
Bob 2 X
编辑2:实际查询:
SELECT Name, Card_Nmbr,
[Out] = case when d.Status='I' then 'X' else '' end,
[In] = case when d.Status='O' then 'X' else '' end,
[Sales] = case when d.Status='S' then 'X' else '' end
FROM [PCOdb].[dbo].[GC_Header] as h
INNER JOIN GC_Detail as d on h.GC_TransNmbr = d.GC_TransNmbr
INNER JOIN GC_Master as m on d.GCM_Nmbr = m.GCM_Nmbr
INNER JOIN Galaxy1.dbo.GxUsers as u on h.UserID = u.UserID
WHERE GC_TransDate between '11/29/16' and dateadd(day,1, '11/29/16')
Group BY Card_Nmbr, Name
编辑2:实际查询; – escapeclaws