2016-10-30 107 views
0

我有兩個表,我正在應用連接。表A具有引用行的外鍵從表B. SQL如下:與所有連接表的ID列進行左連接

SELECT * 
FROM TableA AS a 
LEFT JOIN TableB AS b ON a.id = b.tableAId 
WHERE a.ownerId = X 

我得到了想要的結果,除了一兩件事。這是在JSON中返回行時,只顯示一個id列(TableB)。

相反,我希望能夠返回JSON中的所有id列,其中重複列將附加一個數字。例如:id,id1,id2,id3等...

+1

只是給你的列更有用的名字。 – Strawberry

回答

1

您需要指定所需的列,明確給它們使用別名,以便名稱不同。像這樣:

SELECT a.*, b.id as b_id 
FROM TableA a LEFT JOIN 
    TableB b 
    ON a.id = b.tableAId 
WHERE a.ownerId = X; 
+0

有沒有一種方法可以爲表b.id定義一個別名並獲取所有其他列而不必在select子句中指定它們? – Vince

+0

@Vince。 。 。不,沒有,除非你使用動態SQL。 –

+0

我將如何去實現呢?我的sql正在寫入一個node.js API – Vince