可以說我有這個表:Mysql的選擇與IN,限行1對每場比賽
| id | record_id | date_updated |
|----|-----------|--------------|
| 1 | 1 | 19-03-2015 |
| 2 | 1 | 18-03-2015 |
| 3 | 1 | 17-03-2014 |
| 4 | 2 | 01-01-2015 |
| 5 | 2 | 05-02-2015 |
所以我要尋找的結果是:
| id | record_id | date_updated |
|----|-----------|--------------|
| 1 | 1 | 19-03-2015 |
| 4 | 2 | 01-01-2015 |
我有記錄陣列IDS。
$ records = [1,2];
所以我可以這樣做:
select * from `mytable`
WHERE `record_id` IN ($records)
AND mytable.date_update > 01-01-2014
AND mytable.date_updated < 12-12-2015
因此MySQL將選擇記錄至極的比賽日期date_updated標準(以及記錄ID OFC),這對於每一個記錄ID是更多然後1,基本上我要讓他限制每個$ record_id的行數爲1
如果這甚至是可能的。
//很難解釋這個問題,真正的情況是這是另一個查詢的子查詢,但真正的例子是10行查詢和100列表,所以它會更難解釋情況並讓某人讀取它/ udnerstands。希望有人能理解我的問題,如果不是,我會盡力解釋更多。
感謝
嘗試解釋,什麼不適用於您的查詢。你輸錯了嗎?如果是,哪個輸出? – OddDev 2015-03-19 12:05:18
我在底部發布了一個編輯 – Izopi4a 2015-03-19 12:07:37
不知道是否解決了你的問題,但是在mysql中有一個叫做limit的函數[http://www.w3schools.com/php/php_mysql_select_limit.asp] – katmanco 2015-03-19 12:07:57