sql >> Database >  >> RDS >> PostgreSQL

Query die exact aantal rijen retourneert

Beschouw dit als grotendeels vereenvoudigd versie van uw plpgsql-functie . Zou moeten werken in PostgreSQL 8.3 :

CREATE OR REPLACE FUNCTION x.fnk_abonemento_nariai(_prm_item integer)
  RETURNS SETOF subject_items AS
$BODY$
DECLARE
    _kiek    integer :=  num_records    -- get number at declaration time
                         FROM subjekto_abonementai WHERE num_id = _prm_item;
    _counter integer;
BEGIN

RETURN QUERY                            -- get the records that actualy exist
SELECT sub_item, sal_subject
FROM   sal_subject 
WHERE  sub_item = prm_item;

GET DIAGNOSTICS _counter = ROW_COUNT;   -- save number of returned rows.

RETURN QUERY
SELECT NULL, NULL                       -- fill the rest with null values
FROM   generate_series(_counter + 1, _kiek);

END;
$BODY$ LANGUAGE plpgsql VOLATILE STRICT;

Details over plpgsql in de handleiding (link naar versie 8.3).



  1. Is het een slechte gewoonte om de instructie EXIT WHEN te gebruiken bij het doorlopen van CURSOR's in Oracle?

  2. SQL Server 2000 - Gekoppelde server

  3. Bespaar tijd bij het uitvoeren van Microsoft Access-rapporten met filters in de lay-outweergave

  4. Samenvoegtabel met subtekenreeksvoorwaarde