PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Postgresql atribui uma consulta de seleção à variável na função


Você não precisa usar SELECT para avaliação da função.
id := to_number((SELECT code FROM buildings WHERE name = building) 
                                                      || floor || num::text,
                '999999999');

outra possibilidade (e geralmente melhor) é usar a função na lista de expressões (lista de campos de resultados)
id := (SELECT to_number(code || floor || num::text, '99999999') 
          FROM buildings WHERE name = building)

Use SELECT somente quando você precisa de uma consulta aos dados, não para avaliação de função ou variável!