我有四个不同的表,一个主要SPECIAL
表只包含参照CONTRACT
和PHONE
表的id。MySQL:在一个查询中选择来自四个不同表的结果
我的查询如下所示:
SELECT *
FROM `specials` specials
INNER JOIN `contract` contracts
ON specials.contract_id = contracts.id
INNER JOIN `phone` phones
ON specials.phone_id = phones.id
INNER JOIN `ugets` ugets
ON specials.id = ugets.special_id
目前,该只得到一列从UGETS
表,但我需要从这个特定表中的所有行与正确special_id
。
任何人都可以请指点我正确的方向吗?我似乎无法帮助自己搜索它。
如果您发出更简单的查询,会发生什么情况 - 在specials.id = ugets.special_id中选择特殊内部连接ugets?你有多少行?尽量不要使用'select *',特别是对于多表连接。 – 2012-04-02 07:45:37
'LEFT JOIN'而不是'INNER JOIN'? – biziclop 2012-04-02 07:46:02
请抽取数据集? – Romain 2012-04-02 07:53:40