Oracle でソート後に最初のデータを取得する 2 つの方法: ROWNUM 疑似列を使用して、クエリが現在の行番号 1 のデータを返すように制限します。 FETCH FIRST 1 ROWS ONLY 句を使用して、結果セットの最初の 1 行のみを返すようにクエリを制限します。
Oracle でソート後に最初のデータを取得する 2 つの方法
Oracle では、データセットをソートした後に最初のデータを取得するために 2 つの主な方法を使用できます:
1. ROWNUM 疑似列を使用します
ROWNUM
疑似列は、クエリ結果セット内の現在の行の行番号を返します。次のクエリは、ROWNUM
疑似列を使用して、並べ替えられたデータセットの最初のデータを取得します: ROWNUM
伪列返回当前行在查询结果集中的行号。以下查询使用 ROWNUM
伪列获取排序后数据集的第一条数据:
<code class="sql">SELECT * FROM ( SELECT * FROM table_name ORDER BY column_name ) WHERE ROWNUM = 1;</code>
2. 使用 FETCH FIRST 1 ROWS ONLY 子句
FETCH FIRST 1 ROWS ONLY
子句限制查询只返回结果集中的前 1 行。以下查询使用 FETCH FIRST 1 ROWS ONLY
子句获取排序后数据集的第一条数据:
<code class="sql">SELECT * FROM table_name ORDER BY column_name FETCH FIRST 1 ROWS ONLY;</code>
示例:
假设我们有一个名为 "my_table" 的表,包含以下数据:
id | name |
---|---|
1 | John |
2 | Mary |
3 | Bob |
以下查询将使用 ROWNUM
伪列获取按 "name" 列升序排序的第一个数据:
<code class="sql">SELECT * FROM ( SELECT * FROM my_table ORDER BY name ) WHERE ROWNUM = 1;</code>
结果:
id | name |
---|---|
1 | John |
以下查询将使用 FETCH FIRST 1 ROWS ONLY
<code class="sql">SELECT * FROM my_table ORDER BY name FETCH FIRST 1 ROWS ONLY;</code>
2. FETCH FIRST 1 ROWS ONLY 句を使用します
例: | |
---|---|
id | name |
ROWNUM
疑似列は、「name」列によって昇順にソートされた最初のデータを取得します: 🎜rrreee🎜 結果: 🎜🎜🎜🎜🎜id🎜🎜name🎜🎜🎜🎜🎜🎜1🎜🎜John🎜🎜🎜 🎜 🎜 次のクエリは、FETCH FIRST 1 ROWS ONLY
句を使用して、「name」列によって昇順に並べ替えられた最初のデータを取得します。 🎜rrreee🎜 結果: 🎜🎜🎜🎜🎜id🎜🎜name 🎜🎜🎜🎜 🎜🎜1🎜🎜ジョン🎜🎜🎜🎜以上がOracleでソート後に最初のデータを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。