sql偽列
⑴ sql Server里有沒有類似Oracle里的rownum的偽列
rownum和Dual表,應該是Oracle所特有的東西。 SQL Server和Sybase都沒有這個,其它的資料庫不好說。 rownum關鍵字,是Oracle為查詢返回的行,順序分配的編號,當然也可以作為Where條件來使用。 Dual表:也是Oracle方便查詢而使用的蘆森首特殊表。Oracle內部機制可以確保該表始終只有一行一列一個X值。 下陪數面是從網上找到的使春燃用臨時表的方法,因為沒有Sql server環境,未測試,僅供參考: select rownum=identity(int,1,1),id,name into #t from table1 select * from #t drop table #t 如果只想查詢記錄,可以參考下面的子查詢代碼: select * from 表 where id = ALL (select id from 表); select * from 表 where id <= ALL (select id from 表);
⑵ sql 查詢返回滿足條件的行和下一行
oracle里可以用ROWNUM偽列,寫了一個例子用作參考:
with t1 as (select rownum n,a,b,lead(rownum)over(order by rownum) ne from cc)
,t2 as (select n,a,b,ne from t1 where 5 in (a,b))
select n,a,b from t2
union
select n,a,b from t1 where n in (select ne from t2)
把a,b換成你的欄位,cc換成你的表名就可以了,我自己用數據測試了下,沒問題。