Oracleでは、通常このようにページングを問い合せます。一時テーブルを作成せずにSybaseでページングを実行するにはどうすればよいですか? (oracle rownumの問題)
SELECT * FROM (SELECT *, rownum rid FROM TABLEA WHERE rownum <= #pageend#)
WHERE rid > #pagestart#
ただし、Sybase DBMSには「rownum」機能はありません。
Sybaseでどのようにこのクエリを正確に行うことができますか?
いくつかの方法が見つかりました。
用いる "行数"
セットの行数10
SELECT * FROM TABLEAから
使用アイデンティティ(作る一時テーブル)
SELECT *、ROWNUM = IDENTITY(8 )INTO #TEMP FROM TABLEA
SELECT * FROM #TEMP WHER E ROWNUM <#のpageend#とROWNUM> =#pagestart#
DROP TABLE #TEMP
は、これらは私が欲しいものではありません。
セッションレベルでrowcountが設定されているため、テンポラリテーブルを作成したくありません。
これは良い考えですか? id列が1から始まることをどのように知ることができますか?そしてそれに穴がない?私はこれが答えではないと思う。 –