Mysql使用where子句选择join
我有3个表,使用左连接选择它们。我的问题是:Mysql使用where子句选择join,mysql,database,left-join,where-clause,Mysql,Database,Left Join,Where Clause,我有3个表,使用左连接选择它们。我的问题是: SELECT * FROM books AS b LEFT JOIN publisher AS p ON p.publisher_id = b.publisher_id LEFT JOIN category AS c ON c.cat_id = b.cat_id WHERE b.cat_id = '1' // I change value 1, 2, 3, etc, no difference 我在Php MyAdmin上测试该查询,没有显示任
SELECT *
FROM books AS b
LEFT JOIN publisher AS p ON p.publisher_id = b.publisher_id
LEFT JOIN category AS c ON c.cat_id = b.cat_id
WHERE b.cat_id = '1' // I change value 1, 2, 3, etc, no difference
我在Php MyAdmin上测试该查询,没有显示任何行。但是当我删除“where子句”时,可以看到所有行。我看不出我犯了什么错误。请给我一个指导
谢谢你试过没有引号的
1
吗?是的,我试过了。不带引号,使用双引号,将b.cat_id更改为c.category_name,并用category的名称填充值,所有这些都是相同的integer。Cat_id是category中的主键如果您想根据类别Cat_id
进行筛选,那么它不应该是c.Cat_id=1
,因为c
是类别的别名,如果您也能共享表的结构,那就太好了。