我不确定这是否可行,但例如在这种情况下:
SELECT
i.name
FROM
items i
INNER JOIN users u
ON u.item_id = i.id
INNER JOIN sales s
ON s.item_id = i.id
WHERE u.status = 1
AND s.status = 1
我想将非现有字段分配给“type”,因此如果记录属于“users”表,则type = Users,otherwize type = Sales。
它应该看起来像:| name | type |
|-------------|-------|
| First Item | User |
| Second Item | Sales |
| Second Item | User |
答案 0 :(得分:4)
我认为这可能是你想要做的事情。
SELECT i.name,'User' as type FROM items i
INNER JOIN users u ON u.item_id = i.id WHERE u.status = 1
UNION
SELECT i.name,'Sales' as type FROM items i
INNER JOIN sales s ON s.item_id = i.id WHERE s.status = 1
http://sqlfiddle.com/#!9/c81bf/2
内部加入项目与用户和硬编码'用户'作为类型
内部加入具有销售和硬编码的项目'销售'作为类型
然后UNION 2一起选择。