2017-02-23 15 views
-1

我有一個發票行項目表。每個訂單項都可以源自幾種可能的來源之一,例如,client_id,entity_id,vendor_id等。這些id中的每一個都會匹配另一個表的主鍵,我們會在其中找到名稱和其他信息。我正在嘗試運行發票訂單項的報告。我希望該報告爲每個可顯示相應名稱的訂單項添加一個名爲「來源名稱」的值。因此,如果源代碼是客戶端,它將顯示客戶端的名稱,如果源代表供應商,則會顯示供應商的名稱等。我還希望能夠連接文本以表明它是否是客戶端,實體,供應商等在MySQL中,如何從多個字段匹配的多個表中返回一個值

+2

至少提供一些示例數據(足以涵蓋你的用例)和期望的結果。 –

+0

我無法理解您的表格以及您如何決定客戶或其他人的發票付款! – MohaMad

+0

我想我明白了,但仍然希望得到別人的想法/想法。 – bollacious

回答

0

我相信你在找UNION。如果你有兩個表,你可以使用聯合來創建一個表

 SELECT * 
     FROM (
      SELECT client_id AS 'ID_FIELD', client_name AS 'NAME_FIELD', 'client' as 'TABLE_TYPE' FROM client_table 
      UNION 
      SELECT vendor_id AS 'ID_FIELD', vendor_name AS 'NAME_FIELD', 'vendor' as 'TABLE_TYPE' FROM vendor_table 
      ) AS t1 

     WHERE t1.ID_FIELD = 'YOUR_VALUE_HERE' 
相關問題