我有一個SELECT查詢,你可以在那裏搜索車主。 每個車主都可以有多輛車。 有隨機產生的汽車列表,我們必須找到所有者。當一個所有者使用一次以上,例如Mysql完全相同的查詢
...
$owners[] = $dbaseowners["ownerid"] // owner ID's fetched from database
$owners = implode (',',$owners);
SELECT carname FROM cars WHERE ownerid IN ($owners);
我的問題是:IN(1,1,4,1) - MySQL只取一個本用戶數據的「複製」。
由於我有一個隨機生成的汽車列表,我必須擁有每一輛車的車主行,不管車主是否相同。
任何想法?
它似乎並不像你取你所查詢的任何所有者信息。在我看來,你的查詢將返回列表中所有者的所有carname。所以如果一個車主擁有10輛車,那麼所有10輛車都會在你的結果集中。 –
您的陳述中說「有一個隨機生成的汽車列表」。但是,你的代碼有「ownerid in($ owners)」。這是什麼?隨機選擇的汽車或車主列表? –
汽車列表已從數據庫中提取。每輛車都有ownerID,這些都是在$ owners變量中收集的,之後會有選擇查詢,我會根據哪些車輛在列表中搜索車主。問題是MySQL不重複在IN()語句中使用相同數字的查詢。但是我需要這個,因爲我不知道列表中有哪些車,並且因爲一個車主可以擁有多輛車 –