我有三张 table
- 订单
- 成员
- 产品
在订单中,我有字段id、mem_id、date、prod_id、status
,其中mem_id来自members
表,prod_id来自products
> 表
在成员中,我有字段mem_id、姓名、电话、地址、城市、州、邮政编码、国家
,其中国家/地区保存来自国家
表的国家/地区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条件
连接表并像这样应用where条件
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
关于php - 选择比较另一个表中的字段的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43819226/