適用於sql2000/2005
select
top頁大小
*from
table1
where
id not
in(
select
top頁大小
*(頁數-1
) id
from
table1
order
byid
)
order
byid
適用2000/2005
**select
top頁大小
*from
table1
where
id >
(
select
isnull
(max
(id),
0)
from
(
select
top頁大小
*(頁數-1
) id
from
table1
order
byid
) a
)
order
byid
適用2005
select
top頁大小
*from
(
select
row_number()
over
(order
byid)
asrownumber,
*from
table1
) a
where
rownumber
>
頁大小*
(頁數-
1)
**--
-處理時候用程式碼增加個id int identity
--方法1:
--適用於 sql server 2000/2005
select
top頁大小
*from
table1
where
id notin(
select
top頁大小
*(頁數-1
) id
from
table1
order
byid
)order
byid
--方法2:
--適用於 sql server 2000/2005
select
top頁大小
*from
table1
where
id >
(select
isnull
(max
(id),0)
from
(select
top頁大小
*(頁數-1
) id
from
table1
order
byid
) a)
order
byid
--方法3:
--適用於 sql server 2005
select
top頁大小
*from
(select
row_number()
over
(order
byid)
asrownumber,
*from
table1
) awhere
rownumber
>
頁大小*
(頁數-1)
--方法四 適用於 sql server 2005
declare
@pagenum
asint
, @pagesize
asint
set@pagenum=2
set@pagesize=3
select
*from
(select
row_number()
over
(order
bynewsid
desc
) as
rownum,
newsid, topic, ntime, hits
from
news)
asd
where
rownum
between
(@pagenum-1
)*@pagesize+1
and@pagenum
*@pagesize
order
bynewsid
desc
一條sql 語句搞定資料庫分頁
一條語句搞定資料庫分頁 select top 10 b.from select top 20 主鍵字段,排序字段 from 表名 order by 排序字段 desc a,表名 b where b.主鍵字段 a.主鍵字段 order by a.排序字段 10 每頁記錄數 20 當前頁 1 每頁記錄數...
一條SQL語句研究
現有 select from t where a in 5,3,2,1,8,9,30.假設 a 是主鍵,in裡面的引數是唯一的。現要求輸出的結果集按照 in 提供的引數順序排序。而不是按照a本身的排序規則排序?另 如果不要求使用臨時表或表變數,那麼又有什麼辦法實現。臨時表方案參卡 create ta...
查詢 新增 修改 一條sql 搞定
1 不存在,則新增 不會自動修改 insert into king wz yname,title select 42 北京 from dual where not exists select id from king wz where yname 42 語句解析 select not exists ...