select top(n) from _tablename_ order by _columnname_
是一種非標準sql語句,從資料表中最多檢索出排在前面的n條資料來,但是它可以用select top(n) percent from _tablename_ order by
這樣的根據總資料量來按比例取得資料記錄。
如果資料表中有560條資料,檢索select top(1) from _tablename_ order by _columnname_
就會檢索出6條資料來,總而言之,不是按四捨五入計的,而是按ceil
向上取整法計數的。
如果不加order by
,資料會以不確定的順序檢索出來。
這裡括號可有可無,但是建議加括號。
n可以是常數,也可以是定義的變數。下面這種寫法也是可以的:
如果加了sql
declare @n as bigint = 5;
select top (@n) orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc;
go
with tie
,比如說寫成
則sql
select top (3) with ties orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc;
orderdate
相同的資料會被計作一條資料,總檢索出的結果可能不止3條。
offset fetch
語句是標準sql語句。但是它有侷限性,不能按百分比檢索出資料結果。
表示跳過前50條資料,取得第51到第75條資料。sql
select orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc, orderid desc
offset 50 rows fetch next 25 rows only;
表示取得第1到第25條資料。sql
select orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc, orderid desc
offset 0 rows fetch first 25 rows only;
表示跳過前50條資料,取得之後的全部資料。sql
select orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc, orderid desc
offset 50 rows;
offset fetch
語句必須帶有order by
語句,但是如果不想指定用於排序的columnname,可以用下面這種這種語法,即用select null
作為排序列:
sql
select orderid, orderdate, custid, empid
from sales.orders
order by (select null)
offset 0 rows fetch first 3 rows only;
offset fetch
可用於分頁檢索,比如說下面這種寫法:
sql
declare @pagesize as bigint = 25, @pagenum as bigint = 3;
select orderid, orderdate, custid, empid
from sales.orders
order by orderdate desc, orderid desc
offset (@pagenum - 1) * @pagesize rows fetch next @pagesize rows only;
T SQL中return 返回語句學習
return命令用於結束當前程式的執行,返回到上乙個呼叫它的程式或其他程式,其語法格式如下 return 整數值或變數 return語句要指定返回值,如果沒有指定返回值,sql server系統會根據程式執行的結果返回乙個內定值,返回值含義如下所示 返回值 含義 0 程式執行成功 1 找不到物件 2...
T SQL中return 返回語句學習
return命令用於結束當前程式的執行,返回到上乙個呼叫它的程式或其他程式,其語法格式如下 return 整數值或變數 return語句要指定返回值,如果沒有指定返回值,sql server系統會根據程式執行的結果返回乙個內定值,返回值含義如下所示 返回值 含義 0 程式執行成功 1 找不到物件 2...
MySQL 學習筆記 2 檢索資料
作為 sql 組成部分的保留字,關鍵字是不能用作表或列的名字的 常有的關鍵字有 select update create等 每個 sql 語句都是由乙個或多個關鍵字構成的 select語句的作用是從乙個或多個表中檢索資訊 至少需要給出兩個資訊 想要選擇什麼,以及從什麼地方選擇 在 mysql 中輸入...