不同資料庫限制取前N條記錄
1.mysql
SELECT *
FROM TABLENAME
LIMIT N
2.sql server
SELECT TOP N *
FROM TABLENAME
3.orale
(1)rownum(oracle從8開始提供的一個偽列,是把SQL出來的結果進行編號,始終從1開始常見的用途就是用來分頁輸出)
oracle 取前10條記錄
1) select *
from tbname
where rownum < 11;
2) select *
from (select * from tbname order by id desc )
where rownum<=10;
3)這條語句即是輸出第10到第20條紀錄,這裡之所以用rownum rn,是把rownum轉成例項,因為rownum本身只能用<=的比較方式,只有轉成實列,這樣就可做 >=的比較了。
SELECT *
FROM (SELECT a.*, ROWNUM rn
FROM torderdetail a)
WHERE rn >= 10 AND rn <= 20
4)特別的
Rownum的另類用法,有時候我們會遇到這種需求,要求輸出當月的所有天數,許多人會煩惱,資料庫裡又沒有這樣的表,怎麼輸出一個月的所有天數呢?用rownum就能解決:
SELECT TRUNC (SYSDATE, 'MM') + ROWNUM - 1
FROM DUAL
CONNECT BY ROWNUM <= TO_NUMBER (TO_CHAR (LAST_DAY (SYSDATE), 'dd'))
(2)row_number() over()的使用(一般寫法row_number() over( order by order_date desc) 生成的順序和rownum的語句一樣,效率也一樣)
而對於分組後取最近的10條紀錄,則是rownum無法實現的,這時只有row_number可以實現,row_number() over(partition by 分組欄位 order by 排序欄位)就能實現分組後編號,比如說要取近一個月的每天最後10個訂單紀錄
SELECT *
FROM (SELECT a.*,ROW_NUMBER ()
OVER (PARTITION BY TRUNC (order_date)
ORDER BY order_date DESC) rn
FROM torderdetail a)
WHERE rn <= 10
相關文章
- 如何在不同的資料平臺取前百分之N的記錄?
- MySQL分組查詢後獲取前N條資料MySql
- 計算資料庫中所有表的記錄條數資料庫
- MySQL 分組排序後 → 如何取前N條或倒數N條MySql排序
- MongoDB隨機查詢返回一條或N條記錄的方法MongoDB隨機
- 又一知名平臺資料庫暴雷!1300萬條敏感記錄曝光資料庫
- 2條流程解決資料同步到全球部署的N個資料庫資料庫
- 資料庫mysql學習筆記記錄資料庫MySql筆記
- 獲取當前修改的行記錄資料
- postgresql 多條記錄合併一條,或取最新的一條資料SQL
- 資料庫學習與複習筆記--資料庫概念和不同類資料庫CRUD操作(1)資料庫筆記
- 為VNPY增加資料庫記錄交易資料功能資料庫
- SQL Server 資料庫基本記錄(一)SQLServer資料庫
- 向量資料庫Chroma學習記錄資料庫
- cmdb 查詢資料庫操作記錄資料庫
- WindowsServer 2012資料庫遷移記錄WindowsServer資料庫
- SQL Server 資料庫基本記錄(二)SQLServer資料庫
- SQL Server 資料庫基本記錄(三)SQLServer資料庫
- 挺有意思:PHP 將N秒內連續的記錄視為一條記錄PHP
- 向量資料庫之Lancedb學習記錄資料庫
- 常見資料庫最佳化記錄資料庫
- thinkphp6多資料庫配置記錄PHP資料庫
- Oracle查詢前100萬條資料Oracle
- mysql 批次更新與批次更新多條記錄的不同值實現方法MySql
- 資料庫轉換工具,不同資料庫之前任意轉換資料庫
- 還原sql server 2000資料庫的坑,不同版本資料庫SQLServer資料庫
- 研究人員發現可公開訪問的包含1100萬條記錄的MongoDB資料庫MongoDB資料庫
- 一個不受保護的資料庫致使2億條美國公民的記錄遭洩露資料庫
- MYSQL資料庫表記錄刪除解決方案MySql資料庫
- 面試問題記錄 二 (資料庫、Linux、Redis)面試資料庫LinuxRedis
- 資料庫物件資訊記錄表|全方位認識 mysql 系統庫資料庫物件MySql
- 通過觸發器記錄資料庫連線資訊觸發器資料庫
- 不同資料庫SQL語法差異資料庫SQL
- MySQL 資料庫生成 10000 條測試資料MySql資料庫
- 大概在昨天下午資料庫執行記錄裡面發現一條奇怪的 sql資料庫SQL
- Masonite 熟悉步驟小記錄 (二、連線資料庫)資料庫
- Masonite 熟悉步驟小記錄 (三、資料庫遷移)資料庫
- Tp6記錄第三天資料庫操作資料庫