mysql - 通过多个表获取MySQL数据

标签 mysql multiple-tables

我想要执行以下操作:

product中选择与表productsystem_type中的type_id值匹配的所有内容。然后使用那些匹配的结果,匹配system_typesystem_cat表中的cat_id,然后细化最终结果,其中cat_type = 0 来自 system_cat 表。

当前的 SQL 似乎有语法错误:

SELECT * FROM product
JOIN system_type
    USING (type_id)
JOIN system_cat
    USING (cat_id)
WHERE cat_type = 0

我还尝试过什么:

SELECT * FROM product
JOIN system_type
    USING system_type.type_id = product.type_id
JOIN system_cat
    USING system_type.cat_id = system_cat.cat_id
WHERE system_cat.cat_type = 0

最佳答案

试试这个。您可能需要明确键入所需的列

SELECT * FROM product as pr 
INNER JOIN system_type as st
    ON st.type_id = pr_id
INNER JOIN system_cat as sc
    ONH st.cat_id = sc.cat_id
WHERE sc.cat_type = 0

关于mysql - 通过多个表获取MySQL数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32224165/

相关文章:

php - 如何获取 php session 变量并在 ssp 的 where 子句中使用它来获取带有数据表的单个 ligne 记录

javascript - 在 sonarqube 4.5.1 上获取 "exception clearing maxRows/queryTimeout"

mysql - 如何让 MS SQL 创建具有唯一 ID 的 View ?

mysql 多表 vs 1 表

sql - 如何将 3 个查询合并为一个

php - 在 Linux 中将 PHP 和 MySQL 安装为服务

PHP » 单例 MySQL 连接

mysql - 更新 mySQL 中列的部分

php - 尝试插入/更新具有多个值的两个不同表

mysql - 使用mysql在一个查询中选择多个表中的 child 总数