我有一个一对多的关系。我有三张桌子:
|A       |  | B                |  |C      |
|ID| ... |  |ID|A_ID|C_ID|VALUE|  |ID|NAME|
|1 |     |  |1 |1   |2   |val_1|  |1 |a   |
|2 |     |  |2 |1   |1   |val_2|  |2 |b   |
|3 |     |  |3 |2   |1   |first|  |
...
我需要得到一个结果表:
|ID|a    |b    |
|1 |val_2|val_1|
|2 |NULL |NULL |
|3 |first|NULL |
即,第一列是 A.ID,其他列是 B 中的 VALUE 列,但这些列的名称是 C 中的 NAME。
我的一个想法是查询
SELECT A.ID, B.VALUE AS C.NAME FROM A, B, C WHERE B.A_ID = A.ID AND B.C_ID = C.ID
但是我有:
ERROR:  syntax error at or near "."
有人知道如何通过 PostgreSQL 8.4 中的一个查询来解决问题吗?