Oracleのrowidとrownumの違いは何ですか

下次还敢
リリース: 2024-05-08 18:06:19
オリジナル
665 人が閲覧しました

ROWID と ROWNUM は、Oracle でテーブル内の行を識別するために使用されます。 ROWID: ディスク上の行の位置を識別する一意の物理識別子で、行が更新されても変わりません。 ROWNUM: クエリ結果セット内の行の行番号を示す疑似列。1 から始まり、行の順序に従って変化し、行が追加または削除されるとリセットされます。

Oracleのrowidとrownumの違いは何ですか

OracleにおけるROWIDとROWNUMの違い

ROWIDとROWNUMは、テーブル内の行を識別するために使用される2つの異なるOracleテーブルキーワードです:

  • ROWID: 一意の内部そうだデータベース内のテーブルの各行を識別する管理識別子。
  • ROWNUM: クエリ内の現在の行の行番号を返す疑似列。1 から始まる番号が付けられます。

詳しい説明

ROWID

  • ROWIDは、ディスク上のデータブロック内の行の位置を表す物理識別子です。
  • ROWID は、同じテーブル内の異なる行であっても、データベース全体で一意です。
  • ROWID は、テーブルが再編成されない限り、行が挿入、削除、または更新されても変化しません。

ROWNUM

  • ROWNUM は、クエリ結果セット内の行の相対位置を表す論理識別子です。
  • ROWNUM は同じクエリ結果セット内では一意ですが、異なるクエリ結果セットでは同じ行に対して異なる ROWNUM 値が返される場合があります。
  • ROWNUM はクエリ結果セット内の行の順序に応じて変化し、行が追加、削除、または更新されたときにリセットできます。

使用法

ROWID:

  • 異なるセッションまたはトランザクション間で行を一意に識別する必要がある操作の場合。
  • データベースから行を物理的に取得する必要がある場合。

ROWNUM:

  • 行の順序に基づいて実行する必要がある操作用。
  • クエリ結果セットを並べ替えたりページ分割したりする必要がある場合。

<code>SELECT ROWID, ROWNUM FROM table_name;</code>
ログイン後にコピー

結果:

ROWID ROWNUM
AAAA2JDABAAAL4Q4AAAEAAAQ 1
AAAA2JDABAAAL4Q5AAEAARQ 2
AAAA2JDABAAAL4Q6AAEAA6Q 3

以上がOracleのrowidとrownumの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート