你需要加入表:
SELECT A.Agent_Name, C.Country_Name, J.Job_Type
FROM Line_Items LI, Agents A, Country C, Job J
WHERE LI.Agent_ID = 1 AND LI.Agent_ID = A.Agent_ID AND
LI.Country_ID = C.Country_ID AND LI.Job_ID = J.Job_ID
此外,可以考慮使用視圖,就像這樣:
CREATE VIEW Line_Items_Detail
AS
SELECT LI.Agent_ID, A.Agent_Name, C.Country_Name, J.Job_Type
FROM Line_Items LI, Agents A, Country C, Job J
WHERE LI.Agent_ID = 1 AND LI.Agent_ID = A.Agent_ID AND
LI.Country_ID = C.Country_ID AND LI.Job_ID = J.Job_ID
然後,使用視圖,您的查詢簡單如下:
SELECT Agent_Name, Country_Name, Job_Type
FROM Line_Items_Detail
WHERE Agent_ID = 1
使用任何這些查詢,您可以使用您編寫的PHP代碼輸出結果。
希望它有幫助。
編輯
使用的第一個查詢,你的PHP會是這樣(簡化):
$query = "SELECT A.Agent_Name, C.Country_Name, J.Job_Type FROM Line_Items LI, Agents A, Country C, Job J WHERE LI.Agent_ID = 1 AND LI.Agent_ID = A.Agent_ID AND LI.Country_ID = C.Country_ID AND LI.Job_ID = J.Job_ID";
$result = mysql_query($query);
while($row = mysql_fetch_query($result)) {
echo "Agent:" . $row['Agent_Name']."<br>";
echo "Country:" . $row['Country_Name']."<br>";
echo "Job:" . $row['Job_Type']."<br>";
}
當然,您需要更改LI.Agent_ID
如果你需要一個不同的ID。您可以爲其使用佔位符並替換爲正確的ID,或將正確的ID連接到查詢。
對不起,不知道如何可以對這些結果在PHP :( – Felix 2009-08-22 18:28:50
我已經編輯我原來的職位,以應付這一點。 – 2009-08-22 18:36:42
謝謝謝謝謝謝! 這個工作,我愛StackOverflow的輸出! – Felix 2009-08-22 18:47:02