2017-02-23 17 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' 
相关问题