小编Gui*_*lem的帖子

查询多个表,包括具有空外键MySQL的行

这是我第一次使用mysql,我需要一些帮助.我找不到任何解决办法,因为它太容易了,或者我太正常了,无法正常查找.

我想从我的测试数据库中的多个表中进行查询.我们说表是:

类别(*id_category,*id_product)

产品(*id_product,id_category,id_supplier,id_manufacturer)

制造商(*id_manufacturer,名称)

供应商(*id_supplier,名称)

带*的列是整数主键,而不是null,带有auto_increment(从1开始).其他id列只是整数外键(默认为null).

我还需要一个查询,也包括产品表上带有null id_manufacturer和/或id_supplier的行.product表中的那些空字段返回值'0',所以当我进行查询时

SELECT category.id_product, manufacturer.name, supplier.name 
FROM category, product, manufacturer, supplier 
WHERE category.id_category = product.id_category AND manufacturer.id_manufacturer = product.id_manufacturer AND supplier.id_supplier = product.id_supplier;
Run Code Online (Sandbox Code Playgroud)

没有显示具有空值(0)的行.我希望您能够以最干净,最有效的方式指出我,而不必更改表格属性.任何帮助将非常感谢.

mysql null foreign-keys multiple-tables

3
推荐指数
1
解决办法
2919
查看次数

标签 统计

foreign-keys ×1

multiple-tables ×1

mysql ×1

null ×1