2016-05-17 57 views
-4

我是MySQL的初學者。需要幫助MySQL查詢。需要來自兩個表的數據

表1:用戶

ID NAME 
---------- 
1 XYZ 
2 ABC 

表2:任務

ID TASK_NAME ASSIGNED_BY ASSIGNED_TO 
-------------------------------------------- 
1 task 1   1    2 
2 task 2   2    1 

我想要這個結果。

ID TASK_NAME ASSIGNED_BY ASSIGNED_TO 
-------------------------------------------- 
1 task 1   XYZ    ABC 
2 task 2   ABC    XYZ 
+0

請訪問此鏈接,如果你是在MySQL http://www.tutorialspoint.com/mysql/mysql-using-joins.htm初學者它會幫助你更 –

+0

然後,一旦你嘗試了一些代碼,你可以找不出來,回來尋求幫助並編輯你的問題。 – ib11

+0

看起來很像我的功課。讓我們知道你已經嘗試了什麼,以及你被困住了什麼。 –

回答

1

它是一個簡單的任務JOIN

SELECT t.ID, t.TASK_NAME, 
     u1.NAME AS ASSIGNED_BY, 
     u2.NAME AS ASSIGNED_TO 
FROM Task AS t 
JOIN Users AS u1 ON t.ASSIGNED_BY = u1.ID 
JOIN Users AS u2 ON t.ASSIGNED_TO = u2.ID 
+0

如何在上述查詢中添加條件? –

+0

@aasimbairagdar您可以將其添加到查詢的底部。 –

+0

@aasimbairagdar很高興我能夠幫助。如果它幫助你解決你的問題,請將它標記爲或接受任何其他答案。 –

0

您需要使用JOIN做到這一點。我使用INNER JOIN請嘗試以下查詢。

SELECT t.ID, t.TASK_NAME, 
     u1.NAME AS ASSIGNED_BY, 
     u2.NAME AS ASSIGNED_TO 
FROM Task AS t 
INNER JOIN Users AS u1 ON t.ASSIGNED_BY = u1.ID 
INNER JOIN Users AS u2 ON t.ASSIGNED_TO = u2.ID