簡體   English   中英

選擇比較另一個表中的字段的記錄

[英]Select records comparing a field from another table

我有三張桌子

  1. 命令
  2. 成員
  3. 產品展示

在訂單中,我有字段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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM