今天给大家介绍一下TOP、OFFSET-FETCH、SET ROWCOUNT用法笔记,希望对大家能有所帮助! OFFSET-FETCH技术的支持。 OFFSET-FETCH筛选通常被视为ORDER BY子句的一部分,通常用于实现按顺序分页显示效果。 从支持跳过功能看,OFFSET-FETCH子句比TOP子句更灵活。但OFFSET-FETCH不支持PERCENT和WITH TIES选项,而TOP支持。 由于OFFSET-FETCH是标准的,而TOP不是,建议使用OFFSET-FETCH作为默认选择,除非你需要TOP支持且OFFSET-FETCH不支持的功能。
LIMIT 10, 20; -- 方式2(推荐) SELECT * FROM table LIMIT 20 OFFSET 10; 3.2 SQL Server(2012+) SQL Server 使用 OFFSET-FETCH * FROM table ORDER BY id OFFSET 10 ROWS FETCH NEXT 20 ROWS ONLY; 3.3 Oracle(12c+) Oracle 12c 开始支持 OFFSET-FETCH LIMIT offset, count 或 LIMIT count OFFSET offset 数据库差异 MySQL/PostgreSQL 用 LIMIT,SQL Server/Oracle 用 OFFSET-FETCH
WHERE O.cusstid = 1 ) AS Temp; :bulb:表表达式不仅可用于SELECT,也可用于其它DML语句(INSERT、UPDATE、DELETE和MERGE) TOP & OFFSET-FETCH SELECT TOP(50) * FROM dbo.Orders ORDER BY orderid DESC ) UPDATE Temp SET freight += 10.00; 此外,可以使用OFFSET-FETCH
表表达式不仅可用于SELECT,也可用于其它DML语句(INSERT、UPDATE、DELETE和MERGE) TOP & OFFSET-FETCH 与SELECT语句一样,T-SQL也支持在INSERT SELECT TOP(50) * FROM dbo.Orders ORDER BY orderid DESC ) UPDATE Temp SET freight += 10.00; 此外,可以使用OFFSET-FETCH
select * from tableName order by 依据的列名 desc /*desc表示降序排列,asc表示升序排列,默认为升序排列*/ 仅显示指定行的排序 当我们的输出记录太多时,可以通过offset-fetch
返回Table中的10条数据 SELECT TOP(10) * FROM Table; -- 返回Table中10%的数据 SELECT TOP(10) PERCENT * FROM Table; OFFSET-FETCH 60行的10条数据 SELECT * FROM Table ORDER BY Id DESC OFFSET 50 ROWS FETCH NEXT 10 ROWS ONLY; 注意SQL SERVER中,OFFSET-FETCH
分页查询 OFFSET-FETCH或ROW_NUMBER() LIMIT offset, count 9. 多表更新 UPDATE与FROM子句 直接UPDATE多表连接 10.
OFFSET-FETCH 这是标准SQL的选取行数的语法,并且支持跳过功能,免得我们需要使用开窗函数或者两个TOP取交来实现该功能,等价于C#中 XXX.Skip(m).Take(n) 查询第51到75