Função PostgreSQL para uso de loop

Exemplo de função Postgresql

Este negócio é associar os dados usados ​​anteriormente com os dados atuais. Você precisa escrever uma função sql para inicializar os dados. O banco de dados usa postgresql

Código específico

create or replace function insert_user_roles()
returns void as $$
declare
  user RECORD;
  role RECORD;
begin
  for user in (select id from user where is_delete = false) loop
    for role in (select * from role where is_delete = false) loop
      insert into '实际要插入数据的表' ('字段')
      values
      (user.id, role.id);
    end loop;
  end loop;
end;
$$ language plpgsql;

select insert_user_roles();;

 

gramática

O requisito do negócio é inicializar os dados (requisito de simulação) para os usuários que já estão em uso, apenas aprender a sintaxe e o código do negócio pode ser ignorado.

A palavra-chave loop não pode ser ignorada e deve corresponder ao loop for. A
variável declarada precisa usar declare
begin end para corresponder a
ela porque meu cenário de negócios não exige um valor de retorno. Se você precisar de um valor de retorno, pode consultar o documento pgsql. Dificuldade A
consulta é *inteiramente por conveniência e não é recomendável fazer isso em operações comerciais reais

Acho que você gosta

Origin blog.csdn.net/londa/article/details/109399884
Recomendado
Clasificación