文章詳情頁(yè)
mysql - SQL取每個(gè)外鍵前幾條記錄
瀏覽:121日期:2022-06-19 16:33:56
問(wèn)題描述
如果我有張SQL表 有一列(一般是外鍵)是 B我想取B值為 1,2,3 的記錄 但是每個(gè)值最多只去8條記錄就夠了除了:
SQL全部取出來(lái),再在程序里處理獲取每個(gè)8條(缺點(diǎn):如果記錄很多的話浪費(fèi)資源)
運(yùn)行3條SQL,一個(gè)個(gè)值的8條取出來(lái)(缺點(diǎn),如果我要取的值不止3個(gè)的話 要執(zhí)行的SQL太多?)
還有其他更好的辦法嗎?
PS:我試用在MySQL用 UNION 語(yǔ)句行不通,因?yàn)閁NION 只有最后一個(gè)limit 起作用。
問(wèn)題解答
回答1:假設(shè)fid是外鍵字段,id是主鍵字段
select fid, id from (select fid, id, @rank := if(@current_fid = fid, @rank + 1, 1) as rank, @current_fid := fid from your_table order by fid, id desc) ranked where rank <= 8;
上一條:mysql主從 - 關(guān)于mysql數(shù)據(jù)庫(kù)同步問(wèn)題,每個(gè)數(shù)據(jù)庫(kù)都包含相同數(shù)據(jù)?下一條:mysql中的全文索引支持詞根檢索嗎?
相關(guān)文章:
1. Python爬蟲如何爬取span和span中間的內(nèi)容并分別存入字典里?2. mysql - 把一個(gè)表中的數(shù)據(jù)count更新到另一個(gè)表里?3. 請(qǐng)教使用PDO連接MSSQL數(shù)據(jù)庫(kù)插入是亂碼問(wèn)題?4. python - 爬蟲模擬登錄后,爬取csdn后臺(tái)文章列表遇到的問(wèn)題5. visual-studio - Python OpenCV: 奇怪的自動(dòng)補(bǔ)全問(wèn)題6. linux - Ubuntu下編譯Vim8(+python)無(wú)數(shù)次編譯失敗7. node.js - nodejs開發(fā)中常用的連接mysql的庫(kù)8. mysql 查詢身份證號(hào)字段值有效的數(shù)據(jù)9. 視頻文件不能播放,怎么辦?10. mysql - 分庫(kù)分表、分區(qū)、讀寫分離 這些都是用在什么場(chǎng)景下 ,會(huì)帶來(lái)哪些效率或者其他方面的好處
排行榜

熱門標(biāo)簽