RETURN QUERY en SQL
Una función PL/pgSQL que devuelve un conjunto de resultados entero.
-- RETURN QUERY streams a result set out of a PL/pgSQL function.
CREATE FUNCTION low_stock(threshold INTEGER)
RETURNS TABLE (sku TEXT, remaining INTEGER)
LANGUAGE plpgsql
STABLE
AS $$
BEGIN
RETURN QUERY
SELECT p.sku, p.stock
FROM products AS p
WHERE p.stock < threshold
ORDER BY p.stock;
END;
$$;
SELECT *
FROM low_stock(10);
Cómo funciona
RETURNS TABLE (sku TEXT, remaining INTEGER)da forma a la salida.RETURN QUERYseguido delSELECTmanda cada fila que coincida.- Calificar columnas como
p.skuevita chocar con los nombres de salida.
Palabras clave y builtins usados aquí
ASBEGINBYCREATEENDFROMFUNCTIONINTEGERLANGUAGEORDERRETURNRETURNSSELECTSTABLETABLETEXTWHERE
El intento, en números
- Líneas
- 17
- Caracteres a escribir
- 326
- Tokens
- 63
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 58 segundos.
Paso 2 de 4 en Consultas en el código; paso 14 de 23 en Procedimientos almacenados de PostgreSQL.