2011-01-19 5 views
7

私たちはPostgreSQL v8.2.3を使用しています。クエリでシリアル番号を生成する方法は?

クエリ出力でシリアル番号を生成するにはどうすればよいですか?私は、クエリによって返された各行のシリアル番号を表示したい。

例:SELECT employeeid, name FROM employee

私は1から始まる各行に対してシリアル番号を生成して表示することを期待。あなたが名前のソートに応じて番号を割り当てる場合は

答えて

14

内で順序を変更します。

は、PostgreSQL V8.4にアップグレードし、row_number()機能のいずれかを使用:

SELECT row_number() over (ORDER BY something) as num_by_something, * 
FROM table 
ORDER BY something; 

をかSimulating Row Number in PostgreSQL Pre 8.4で説明したように、いくつかのフープを介してジャンプ。

4
 
SELECT row_number() over (order by employeeid) as serial_number, 
     employeeid, 
     name 
FROM employee 

は、あなたが2つのオプションがありover

+0

しかし、 'row_number()' *ウィンドウ関数*はv8.2では使用できません。 – Gnanam

+1

申し訳ありませんが、あなたが8.2を使用しているのを見たことがありませんでしたが、アップグレードすることを強くお勧めします。 –

関連する問題