- ベストアンサー
2件目のデータを取得する
お世話になります。 データベース:SQLSERVER2005 テーブル名:URIAGE_TABLE 項目:URIAGE_CODE、URIAGE_DATE、URIAGE_KINGAKU 上記テーブルの、2件目のデータのみを取得 するSQL文をを知っている方いますか? どうぞ宜しくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
SQL Server にはOracleのROWNUM擬似列のようなものはないので、Orderのない状態ではWHERE ROWNUM=2のような 簡単なとり方はできないと思います。 そこまでやることに意味があるかはわかりませんが、あえてやるなら SELECT TOP 2 URIAGE_CODE,URIAGE_DATE,URIAGE_KINGAKU FROM URIAGE_TABLE EXCEPT SELECT TOP 1 URIAGE_CODE,URIAGE_DATE,URIAGE_KINGAKU FROM URIAGE_TABLE もし、Orderを切れるのならば、ROW_NUMBERが使えますので、そちらの方が普通です。 SELECT URIAGE_CODE,URIAGE_DATE,URIAGE_KINGAKU FROM (SELECT ROW_NUMBER() OVER (ORDER BY ソートキー) SEQ, * FROM URIAGE_TABLE) tmp WHERE SEQ=2
お礼
詳細SQL文を有難うございました。 一発取得は無理ですか...。