记录类型

PostgreSQL 提供了一种名为 RECORD 的类型,它和行类型相似。语法如下:

变量名 RECORD;

和行类型一样,它能保存整行记录;不同之处在于,它没有预定义的结构,它的结果是在 SELECTFOR 语句为它赋值时才确定。

变量名.字段

RECORD 并不是真正的数据类型,它只是一个占位符。当重新给 RECORD 变量赋值时,可以更改它的结构。

下面的示例演示了 RECORD 变量如何与 SELECT INTO 语句一起使用:

do $$
declare
	rec record;
begin
	-- 选择电影
	select film_id, title, length 
	into rec
	from film
	where film_id = 200;
	
	raise notice '% % %', rec.film_id, rec.title, rec.length;   
end $$;

下面的示例演示了如何在 FOR LOOP 中使用 RECORD 变量:

要查看完整内容,请先登录