[英]Mysql one row left join
我有兩個表:
product_list :
id_list | name_product | price |
1 | test01 | 20 |
10 | test02 | 50 |
people :
people_id | people_use_product | people_list
35 | test01 | 1
36 | test02 | 1
他們可以訪問列表ID 1和10。但是同一產品可以在兩行中。 (因為該列表可用於許多列表人員)。 我只需要排一行。 (=產品價格)
SELECT * FROM people
INNER JOIN product_list ON (id_list=1 or id_list=10)
WHERE people_list = 1
LIMIT 0,100
我怎么只有一排?
您的要求是錯誤的。 您沒有指定適當的加入條件 。 您的JOIN實際上是對兩個表進行笛卡爾乘積運算,僅此而已。
如果people.people_list是product_list的外鍵:
SELECT * FROM people
INNER JOIN product_list ON (id_list = people_list) -- valid JOIN condition between two tables
WHERE ids_list = 1
可能更接近您的需求。
但是,我不太了解您的數據結構和實際需求,所以我想您必須對查詢進行一些細化...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.