アドバンテージ データベース サーバー上で実行される Web アプリを作成しています。私が選んだ個人的な武器ではありませんが、それは会社が使用しているものです。エンドユーザーが表示できるようにする必要がある大きなリストがいくつかありますが、SQL で結果をページングする方法が見つからないようです。
アドバンテージ データベースの LIMIT / OFFSET のようなものはありますか? いいえの場合、これにアプローチするための提案はありますか?
前もって感謝します!
アドバンテージ データベース サーバー上で実行される Web アプリを作成しています。私が選んだ個人的な武器ではありませんが、それは会社が使用しているものです。エンドユーザーが表示できるようにする必要がある大きなリストがいくつかありますが、SQL で結果をページングする方法が見つからないようです。
アドバンテージ データベースの LIMIT / OFFSET のようなものはありますか? いいえの場合、これにアプローチするための提案はありますか?
前もって感謝します!
LIMITとROWNUMは、Advantageの次のバージョンの新機能になることを理解しています。 http://feedback.advantagedatabase.com/forums/2671-general/suggestions/30213-return-query-specific-row-number-?ref=title
ただし、それまでは、これを使用して行50〜60を選択していました。
rowidがないmytableからトップ10*を選択します(mytableからトップ50のrowidを選択します)
@ tommieb75、SQL方言が標準ではないことを示しました。これは、SQL-92標準のほとんどとSQL-2003機能の一部を含む標準に基づいていることがわかりました。
START AT
ここでつまずいた場合はこれを更新しますが、Edgarが回答で述べたように、Advantage10SQLはキーワードをサポートするようになりました。
SELECT TOP 10 START AT 11 * FROM emp
参照:devzone.advantagedatabase.com/dz/webhelp/Advantage10.1/master_limiting_query_results.htm
これによるとLIMIT
、アドバンテージでの正しい構文は ですSELECT TOP 10 * FROM YOURTABLE
。