三流備忘録OracleのSQL PL/SQL 関数 ついての備忘録
ホーム >> PL/SQL備忘録 >> SQL擬似列

CURRVALとNEXTVAL

解説

CURRVALは指定された順序の現在の値。
NEXTVALは指定された順序のCURRVALに増分値を加えた値。

構文例


--CURRVAL
select sequence_name.CURRVAL from dual;

--NEXTVAL
select sequence_name.NEXTVAL from dual;

ROWID

解説

データベース表の行のROWID。
UROWID型の変数を使用すると、ROWIDを読み取り可能な書式で格納できる。

構文例

DECLARE
	CURSOR c1 IS SELECT hoge_name,rowid FROM tbl_hoge;

	WHOGE_NAME tbl_hoge.hoge_name%TYPE;
	WROWID	   UROWID;

BEGIN
	open c1;

	loop
		fetch c1 into WHOGE_NAME,WROWID;

		exit when c1%NOTFOUND;

		UPDATE tbl_hoge SET hoge_name = hoge_name || 'hoge' WHERE rowid = WROWID;

		commit;

	end loop;

	close c1;
END;

ROWNUM

解説

表から取り出された順序を示す番号を戻す。

構文例


--3行のみ取得
select ROWNUM,hoge_name  from tbl_hoge where ROWNUM <= 3 ;

--結果
ROWNUM	hoge_name
------------------
1	hogehoge
2	ho-ge
3	hoge