DBViewer Plugin for Eclipse とは

DBViewer Plugin for Eclipse(以下DBViewer)は、Eclipse(統合開発環境)を拡張するためプラグインです。
Eclipseに「データベース・フロントエンド」機能を提供します。(JDBCドライバーを使用しています)
DBAの方よりも開発者(Developer)の方をターゲットに機能を提供しています。
※Microsoft AccessやExcelには接続できません




2008年4月16日水曜日

OracleのROW_NUMBERという分析関数をはじめて知りました。

今日で、DBViewerが「NullpointerExceptionのエラーダイアログを表示する」
という障害報告をもらった。

見てみると、SQLアウトラインを出すためのSQL解析でエラーになっているので、
対象のSQLをもらってみたら、

こんな構文が書けるんだ・・・・とはじめて知りました^^(DBはOracleです)
SELECT
NO
,NAME
FROM
(
SELECT
NO
,NAME
,ROW_NUMBER() OVER(
ORDER BY
NO
) RNUM
FROM
ROWNUM_TEST
)
WHERE
RNUM BETWEEN 5 AND 10



ROW_NUMBER関数については、以下のサイトで詳しく記載してありました。
http://www.shift-the-oracle.com/sql/functions/row_number-practice.html

そいういえば、昔、階層問合せ?(connect by priorを使うやつ)を使ったことを思い出しました。

まだまだ、想定していない構文があります・・・

ちなみに、上のSQLは、DBViewer SQL Formatterで整形したものです。
# 微妙・・・・w

備忘録
・後輩に、SQL Formatterの修正依頼すること

関数の追加:row_number
キーワードの追加:partition by

※この関数はOracleだけではなく、SQLServerにもあるみたい。

0 件のコメント: