mysql – 需要帮助Cross Tab SQL Query
作者:互联网
这是源示例表:
UserID UserNameType UserName 1 First Name FN1 1 Last Name LN1 2 First Name FN2 2 Last Name LN2 3 First Name FN3 3 Last Name LN3 4 First Name FN4 4 Last Name LN4
我想有一个SQL查询来显示我的结果,如下面给出的格式.
UserID FirstName LastName 1 FN1 LN1 2 FN2 LN2 3 FN3 LN3 4 FN4 LN4
需要更多帮助…
谢谢,
Yugal
解决方法:
一个简单的交叉表方法(我个人更喜欢)是使用具有MAX(CASE WHEN …)模式的group by运算符来控制交叉表字段.这很容易理解IMO,并且易于扩展,具有更多领域.我不确定性能.
select
UserID,
max(case when usernametype='First Name' then username end) as FirstName,
max(case when usernametype='Last Name' then username end) as LastName
from
MyTable T
group by
UserID
标签:sql,mysql,sql-server-2008,sql-server-2005 来源: https://codeday.me/bug/20190726/1542631.html