[英]Select records comparing a field from another table
我有三张桌子
在订单中,我有字段id, mem_id, date, prod_id, status
,其中mem_id来自members
表,而prod_id来自products
表
在成员中,我有字段mem_id, name, phone, address, city, state, zip, country
,国家/地区持有国家/ country
表中国家/ country
ID
现在,我只想显示产品ID为2的orders
表中的记录以及国家ID为25的members
的记录
我试着做:
SELECT o.mem_id, o.prod_id, m.mem_id FROM orders o INNER JOIN members m ON m.mem_id = (SELECT mem_id FROM members WHERE country=25) WHERE o.prod_id=2
但是它给出:
Fatal error: Call to a member function fetch_assoc() on a non-object in
因此,它没有获取任何数据和查询中的问题。 请建议我,谢谢
使用ON condition
连接表并应用where condition
如下所示
SELECT o.mem_id, o.prod_id, m.mem_id
FROM orders o
INNER JOIN members m
ON m.mem_id = o.mem_id
WHERE o.prod_id=2 and m.country=25
您可以在列上JOIN
表,并在WHERE
子句中指定条件,例如:
SELECT o.mem_id, o.prod_id, m.mem_id
FROM orders o JOIN members m ON o.mem_id = m.men_id
WHERE o.prod_id = 2 AND m.country = 25;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.