我有一個名爲scores
的表,其中列id
和score
。我想通過它的id
以及它之前和之後的5條記錄訪問特定記錄。有沒有一種方法可以在SQL中說:「用n
和x
之前和之後的項目ID來獲得分數?」如何獲得具有特定ID的記錄之前和之後的5條記錄?
3
A
回答
3
嘗試:
SELECT *
FROM scores
WHERE score >= n
ORDER BY score ASC
LIMIT 6
UNION
SELECT *
FROM scores
WHERE score < n
ORDER BY score DESC
LIMIT 5
的語法可能有所變化,這取決於您所使用的數據庫服務器。
+0
我認爲你可能想爲'> ='部分的'LIMIT 6'。 – msandiford
+0
好點,謝謝。 –
+0
謝謝賈斯汀 - 這正是我一直在尋找的。作爲一個側面說明,這些select語句必須包裝在parens中(至少對於MySQL)。 – richleland
相關問題
- 1. 當前記錄和下一條記錄之間的列總和
- 2. 如何獲得等級在5和10之間的記錄
- 3. 某些記錄之前獲得MongoDB中的所有記錄的總和
- 4. 如何獲得給定日期和之前記錄日期之間的天數?
- 5. 如何從表mysql獲得前5條和最後1條記錄?
- 6. 如何獲取特定ID的記錄?
- 7. 如何在SQL中的特定記錄之間插入記錄
- 8. 如何獲得SqLite的前5條記錄?
- 9. 如何獲得最後10條記錄
- 10. 獲取具有特定條件的選定行的行之前和之後
- 11. MYSQL在特定月份和年份之前獲取記錄
- 12. 在創建/保存|之前獲得記錄`id`風帆Js
- 13. 查看重複記錄的記錄,創建新記錄之前
- 14. 如何獲得具有多個記錄
- 15. 在開始修改記錄之前是否有辦法鎖定一條記錄?
- 16. 如何獲取當前記錄的ID?
- 17. 如何在創建新記錄之前獲取最大ID值?
- 18. 在yii2中的最後一條記錄之前選擇一條
- 19. MySQL的:如何獲得獨特的記錄具有多個GROUPBY
- 20. Laravel - 改變它之前和之後的雄辯日誌記錄
- 21. 在特定的月份和年份之前獲取所有記錄
- 22. 之前創建的RSpec記錄(:suite)如何追蹤這條記錄?
- 23. 如何從表中選擇除前5條記錄以外的所有記錄?
- 24. 如何獲得SQL中某些特定條件的記錄數
- 25. 檢查某個記錄之後或FMDB中的特定記錄之前是否存在行
- 26. 得到所有的記錄數和休眠和mysql中的前100條記錄
- 27. 如何獲得第一個記錄和最後一個記錄
- 28. 如何獲得不具有條目第二表中的記錄
- 29. 在插入新記錄之前檢查現有記錄的表
- 30. 在S3中的某個記錄之後獲取記錄
是你的ids數字和順序? –
是ids是數字和順序 - 它們是主鍵。我可能正在排序另一個領域(如date_created)。它幾乎是一種子查詢方式 - 例如,按照date_created desc排序所有分數,然後給出一個id,獲取它前後的5個項目。 – richleland
SQL Server? MySQL的?甲骨文?具體並相應地標記您的問題。 – Aaronaught