簡體   English   中英

MySQL發布連接表,其中兩列相對於一列

[英]MySQL Issue joining table with two columns against one

我有一個帶有id,first,last和identification列的聯系人表。 試圖讓名稱顯示在更大的連接中。 加入兩列時我無法顯示它。

表:

Inspections Id Order_Id Inspector_Id

聯系人ID First_Name Last_Name Orderer Inspector

這是我的SELECT:

$sql = " SELECT 
        Inspections.Id,     
        Inspections.Orderer_Id,
        Inspections.Inspector_Id,   
        Contacts.Id 
        Contacts.First_Name AS OFirst,
        Contacts.Last_Name AS OLast,
        Contacts.First_Name AS IFirst,
        Contacts.Last_Name AS ILast,

FROM Inspections
JOIN Contacts ON Inspections.Orderer_Id &&         Inspections.Inspector_Id=Contacts.Id
WHERE
                Inspections.Id = " . $trigger . ";";

這只是最新的嘗試。 我已經嘗試了很多方法來加入它們,但我想我只是很難翻譯我在搜索時找到的代碼。 任何幫助將不勝感激!

如果Inspector和Orderer是同一個人,那么您當前的查詢只能起作用(一旦清除了語法錯誤),如果不是,則必須使用表別名連接兩次Contacts:

 SELECT 
        Inspections.Id,     
        Inspections.Orderer_Id,
        Inspections.Inspector_Id,   
        orderer.Id AS OId,
        orderer.First_Name AS OFirst,
        orderer.Last_Name AS OLast,
        inspector.Id AS IId,
        inspector.First_Name AS IFirst,
        inspector.Last_Name AS ILast    
FROM Inspections
JOIN Contacts AS orderer ON Inspections.Orderer_Id = orderer.Id
JOIN Contacts AS inspector ON Inspections.Inspector_Id = inspector.Id
WHERE Inspections.Id = xxxx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM