【发布时间】:2017-02-04 19:11:30
【问题描述】:
我有一张如下表
TABLE_A
ID PERSON_ID NAME GRADE
---------- ---------- ---------- ----------
1 1 NAME_1 10
2 1 NAME_1 20
3 2 NAME_2 30
4 2 NAME_2 40
...
在此表中,每个姓名正好有两行(两个等级)。 我想查询结果如下
RESULT
PERSON_ID NAME GRADE1 GRADE_2
---------- ---------- ---------- ----------
1 NAME_1 10 20
2 NAME_2 30 40
什么是最好的方法。 我可以使用自我加入,但我认为这不是正确的方法
【问题讨论】:
-
如何计算 GRADE1 和 GRADE_2 ??
-
哦。我认为激光名称将是 Name_2。
-
您使用的是 MySQL 还是 Postgresql? (不要标记未涉及的产品。)
-
您标记 MySQL 和 Postgresql,并接受 SQL Server 答案...
标签: mysql sql postgresql crosstab