–if else语句 declare v_sal NUMBER(7,2); BEGIN SELECT sal into v_sal from emp where ename='SCOTT'; DBMS_OUTPUT.PUT_LINE('SCOTT工资:'||v_sal); if v_sal<1000 then dbms_output.PUT_LINE('scott1000'); else if 1000<=v_sal and v_sal<2000 then dbms_output.PUT_LINE('scott工资在10...
elseif new.c_dept_id = '40000' then insert into db_father_40000 values (new.*); end if; return null; end; $$ language plpgsql; 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 2.1.5 创建父表触发器 create trigger insert_db_father_trigg...
在PostgreSQL(简称pgsql)中,虽然不像一些编程语言那样直接使用IF语句进行流程控制,但在特定的上下文(如PL/pgSQL函数或触发器中)还是可以使用IF语句的。以下是针对你的问题的详细解答: 1. 解释pgsql中的if判断的基本语法 在PL/pgSQL中,IF语句的基本语法如下: sql IF condition THEN -- 当condition为真时执行的语...
PL/pgsql是PostgreSQL数据库中的一种编程语言,它结合了PL/pgSQL语言和SQL语句,用于编写存储过程、触发器和函数等数据库对象。 在PL/pgsql中,可以使用条件语句(如IF-THEN-ELSE)和动态SQL来根据标志构建不同列的查询。以下是一个示例: 代码语言:txt 复制 CREATE OR REPLACE FUNCTION get_data_by_flag(flag ...
ELSE … END IF; 循环 循环有好几种写法: WHILE expression LOOP statements END LOOP; 还有常用的一种是:(从1循环到9可以写成FOR i IN 1..9 LOOP) FOR name IN [ REVERSE ] expression .. expression LOOP statements END LOOP; 其他 还有几个常用的函数: ...
在PostgreSQL中,可以使用触发器和事件来监听数据变更,并在变更发生时清除缓存。 CREATETABLEusers ( id SERIALPRIMARYKEY, nameVARCHAR(100)NOTNULL);CREATEORREPLACEFUNCTIONupdate_user_cache()RETURNSTRIGGERAS$$BEGINIF TG_OP='UPDATE'THENPERFORM cache_manager.evict('users', NEW.id); ...
insert into tb_user (username, password) select #{user.username}, #{user.password} where ...
ELSEIF 条件 THEN …ELSE …END IF;循环 循环有好⼏种写法:WHILE expression LOOP statements END LOOP;还有常⽤的⼀种是:(从1循环到9可以写成FOR i IN 1..9 LOOP)FOR name IN [ REVERSE ] expression .. expression LOOP statements END LOOP;其他 还有⼏个常⽤的函数:SELECT INTO record …...
else insert into articles_q4 (topic,content,poster,posttime) select NEW.topic,NEW.content,NEW.poster,now(); end if; end; return null; end; $$ language plpgsql; create trigger tg_insert_articles before insert on articles for each row execute procedure insert_articles(); ...
ELSE RAISE EXCEPTION 'Date out of range. Fix the function_insert_tb_log() function!'; END IF; RETURN NULL; END; $$ LANGUAGE plpgsql; 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 3、创建触发器 CREATE TRIGGER trigger_insert_tb_log ...