Sql 第二个查询中的选项位。谢谢很高兴它起作用了。我只是坐在沙发上,意识到选择列表中的列可能不匹配,很高兴你发现了这一点。虽然,在另一个注释中,您问“我应该有单独的外键字段吗?”经过思考,我认为您应该这样做。图像和产品似乎没有任何共同之处。当你可以有两个FK时,

Sql 第二个查询中的选项位。谢谢很高兴它起作用了。我只是坐在沙发上,意识到选择列表中的列可能不匹配,很高兴你发现了这一点。虽然,在另一个注释中,您问“我应该有单独的外键字段吗?”经过思考,我认为您应该这样做。图像和产品似乎没有任何共同之处。当你可以有两个FK时,,sql,mysql,join,Sql,Mysql,Join,第二个查询中的选项位。谢谢很高兴它起作用了。我只是坐在沙发上,意识到选择列表中的列可能不匹配,很高兴你发现了这一点。虽然,在另一个注释中,您问“我应该有单独的外键字段吗?”经过思考,我认为您应该这样做。图像和产品似乎没有任何共同之处。当你可以有两个FK时,为什么要把类型字段的关系复杂化呢?我这么做主要是因为将来可能会有两个以上的FK SELECT eoi_parentid, eoi_p_id, eoi_po_id, eoi_quantity, i_id, i_parentid, po_name,


第二个查询中的选项位。谢谢很高兴它起作用了。我只是坐在沙发上,意识到选择列表中的列可能不匹配,很高兴你发现了这一点。虽然,在另一个注释中,您问“我应该有单独的外键字段吗?”经过思考,我认为您应该这样做。图像和产品似乎没有任何共同之处。当你可以有两个FK时,为什么要把类型字段的关系复杂化呢?我这么做主要是因为将来可能会有两个以上的FK SELECT eoi_parentid, eoi_p_id, eoi_po_id, eoi_quantity, i_id, i_parentid, po_name, po_price FROM ecom_order_items, images, c_print_options WHERE eoi_parentid = '1' AND i_id = eoi_p_id AND po_id = eoi_po_id; SELECT eoi_id, eoi_parentid, eoi_p_id, eoi_po_id, eoi_po_id_2, eoi_quantity, eoi_type, i_id, i_parentid, po_name, po_price, po_id, ep_id FROM ecom_order_items, images, c_print_options, ecom_products WHERE eoi_parentid = '9' AND i_id = eoi_p_id AND po_id = eoi_po_id ecom_products +-------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+----------------+ | ep_id | int(8) | NO | PRI | NULL | auto_increment | | ep_title | varchar(255) | NO | | NULL | | | ep_link | text | NO | | NULL | | | ep_desc | text | NO | | NULL | | | ep_imgdrop | text | NO | | NULL | | | ep_price | decimal(6,2) | NO | | NULL | | | ep_category | varchar(255) | NO | | NULL | | | ep_hide | tinyint(1) | NO | | 0 | | | ep_featured | tinyint(1) | NO | | 0 | | +-------------+--------------+------+-----+---------+----------------+ ecom_order_items +--------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+-------------+------+-----+---------+----------------+ | eoi_id | int(8) | NO | PRI | NULL | auto_increment | | eoi_parentid | int(8) | NO | | NULL | | | eoi_type | varchar(32) | NO | | NULL | | | eoi_p_id | int(8) | NO | | NULL | | | eoi_po_id | int(8) | NO | | NULL | | | eoi_quantity | int(4) | NO | | NULL | | +--------------+-------------+------+-----+---------+----------------+ c_print_options +------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+--------------+------+-----+---------+----------------+ | po_id | int(8) | NO | PRI | NULL | auto_increment | | po_name | varchar(255) | NO | | NULL | | | po_price | decimal(6,2) | NO | | NULL | | +------------+--------------+------+-----+---------+----------------+ images +--------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---------+----------------+ | i_id | int(8) | NO | PRI | NULL | auto_increment | | i_filename | varchar(255) | NO | | NULL | | | i_data | longtext | NO | | NULL | | | i_parentid | int(8) | NO | | NULL | | +--------------+--------------+------+-----+---------+----------------+
SELECT
   eoi_id, 
   eoi_parentid, 
   eoi_p_id, 
   eoi_po_id, 
   eoi_po_id_2, 
   eoi_quantity, 
   eoi_type,
   i_id, 
   i_parentid,
   po_name, 
   po_price, 
   po_id,
   ep_id
FROM 
   ecom_order_items, 
   LEFT JOIN images
   ON i_id = eoi_p_id  
   LEFT JOIN c_print_options
   ON po_id = eoi_po_id 
   INNER JOIN ecom_products 
   ON eoi_p_id = ep_id
WHERE
   eoi_parentid = '9'  
SELECT eoi_parentid, eoi_p_id, eoi_po_id, eoi_quantity, i_id, i_parentid, po_name, po_price
FROM ecom_order_items
INNER JOIN images
    ON i_id = eoi_p_id
INNER JOIN c_print_options 
    ON po_id = eoi_po_id
WHERE eoi_parentid = '1'
SELECT eoi_id, eoi_parentid, eoi_p_id, eoi_po_id, eoi_po_id_2, eoi_quantity, eoi_type, i_id, i_parentid, po_name, po_price, po_id, ep_id
FROM ecom_order_items
INNER JOIN images
    ON i_id = eoi_p_id
INNER JOIN c_print_options
    ON po_id = eoi_po_id
WHERE eoi_type = 'image' AND i_id = eoi_p_id --Image conditions
  AND eoi_parentid = '9'   
  AND po_id = eoi_po_id

UNION

SELECT eoi_id, eoi_parentid, eoi_p_id, eoi_po_id, eoi_po_id_2, eoi_quantity, eoi_type, i_id, i_parentid, po_name, po_price, po_id, ep_id
FROM ecom_order_items
INNER JOIN images
    ON i_id = eoi_p_id
INNER JOIN c_print_options
    ON po_id = eoi_po_id
WHERE eoi_type = 'product' AND ep_id = eoi_p_id -- Product conditions
  AND eoi_parentid = '9' 
  AND po_id = eoi_po_id