Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MySQL/PHP中连接四个表_Php_Mysql_Join - Fatal编程技术网

如何在MySQL/PHP中连接四个表

如何在MySQL/PHP中连接四个表,php,mysql,join,Php,Mysql,Join,我有四张桌子: Items_a (item_id, name, cat_id, sub_cat_id) Items_b (id, name2, cat_id, sub_cat_id) Category (cat_id, cat_name) Sub_category (sub_cat_id, sub_name, cat_id) 我想加入这些表并尝试以下查询,但它不起作用: SELECT * FROM( SELECT * FROM( SELECT * FROM items_

我有四张桌子:

Items_a (item_id, name, cat_id, sub_cat_id)
Items_b (id, name2, cat_id, sub_cat_id)
Category (cat_id, cat_name)
Sub_category (sub_cat_id, sub_name, cat_id)
我想加入这些表并尝试以下查询,但它不起作用:

SELECT * FROM(
    SELECT * FROM(
        SELECT * FROM items_c AS c 
        JOIN category as t ON c.cat_id=t.cat_id
    ) as ct 
    JOIN sub_category as s ON ct.sub_cat_id=s.sub_cat_id
) as cts 
JOIN items_nc AS n ON cts.sub_cat_id=s.sub_cat_id

有人能帮我吗?

我猜这就是你需要的,你可以指定列名列表而不是*

 SELECT * FROM items_c c JOIN category t ON c.cat_id=t.cat_id 
                         JOIN sub_category s ON ct.sub_cat_id=s.sub_cat_id 
                         JOIN items_nc n ON cts.sub_cat_id=s.sub_cat_id
您可以进一步参考。

参考此

SELECT * 
FROM category c
INNER JOIN sub_category sc on c.cat_id = sc.cat_id
INNER JOIN item_a a on sc.sub_cat_id = a.sub_cat_id
INNER JOIN item_b b on sc.sub_cat_id = b.sub_cat_id
试试这个:

SELECT *
FROM category c
INNER JOIN sub_category sc on c.cat_id = sc.cat_id
INNER JOIN items_a a on a.cat_id = c.cat_id AND a.sub_cat_id = sc.sub_cat_id
INNER JOIN items_b b on b.cat_id = c.cat_id AND b.sub_cat_id = sc.sub_cat_id

“不工作”是什么意思?不需要三次选择,只需要一次->
SELECT*FROM JOIN ON()JOIN ON()JOIN ON()
。所有这些导致错误的子选择,我假设您得到的是“Ambigiously column..”错误?@Chris LOL在这种情况下,我不认为有任何混淆不工作意味着什么,您的预期输出是什么?同样,在你的查询中,项目从何而来?找本书或基础教程。那就回来找我们。