==DB2 先頭の1件をFETCHせずに取得する==
[[DB2]]| {{category DBパフォーマンス}}{{category SQL}}
ユニークキーを満たさず、複数件取得されるデータのうち、先頭の1件のみ必要な場合など、カーソルを開いてフェッチしなくても、SELECTの末尾に以下を付与すれば1件のみ取得できる。
====
[[http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.admin.perf.doc%2Fdoc%2Fc0055223.html&resultof=%22fetch%22%20%22first%22%20%22rows%22%20%22only%22%20 FETCH FIRST N ROWS ONLY 節と共に OPTIMIZE FOR N ROWS 節を使用する]]|
OPTIMIZE FOR n ROWS 節を使用すると、アプリケーションが n 行のみを取得するよう、オプティマイザーに対して指示できます。しかし、照会では完全な結果セットが戻ります。 FETCH FIRST n ROWS ONLY 節を使用すると、照会で n 行のみが戻るように指示できます。