Oracle 定义变量及使用

在Oracle SQL Developer的SQL工作表中,输入:dec,上下移动可以选择定义好的SQL,选择 ... 可看到所有SQL

 如下:

DECLARE
  n NUMBER;
BEGIN
  SELECT o.x INTO n FROM ot1 o WHERE o.x = 30;
END;

定义变量且批量添加SQL:

DECLARE
  MaxVersion INT;
BEGIN
  SELECT NVL(MAX(VERSION), 0) + 1 INTO MaxVersion FROM ETL_USER_INFO;

  INSERT INTO etl_user_info(user_rowuid, userid, username, mail, role_id, role_name, version_date, version) 
  SELECT U.ROWUID, U.USERID, U.USERNAME, U.MAIL, R.ROLE_ID, R.ROLE_NAME, SYSDATE AS version_date, MaxVersion AS version
  FROM USER_INFO U
  INNER JOIN USER_ROLE_X X ON X.USERID = U.USERID
  INNER JOIN ROLE_INFO R ON R.ROLE_ID = X.ROLE_ID
  ;
END;

 

posted @ 2021-11-20 14:45  Robot-Blog  阅读(1995)  评论(0编辑  收藏  举报