sql >> Base de Datos >  >> RDS >> PostgreSQL

Postgresql asigna una consulta de selección a la variable en la función

No necesitas usar SELECT para evaluación de funciones.

id := to_number((SELECT code FROM buildings WHERE name = building) 
                                                      || floor || num::text,
                '999999999');

otra posibilidad (y generalmente mejor) es usar la función en la lista de expresiones (lista de campos de resultados)

id := (SELECT to_number(code || floor || num::text, '99999999') 
          FROM buildings WHERE name = building)

Usa SELECT ¡solo cuando necesite una consulta de datos, no para evaluar funciones o variables!