sql >> Databasteknik >  >> RDS >> PostgreSQL

PLpgSQL-funktionen returnerar inte matchande titlar

Bortsett från ditt omedelbara offertproblem (har åtgärdats ordentligt av Jeff), kan funktionen vara mycket enklare och snabbare så här:

CREATE or REPLACE FUNCTION q11(partial_title text) 
  RETURNS SETOF text
  LANGUAGE plpgsql AS
$func$
BEGIN
   RETURN QUERY
   SELECT m.title || ' has ' || m.ncrew || ' cast and crew'
   FROM   movie_makers m
   WHERE  m.title ~* $1;
   
   IF NOT FOUND THEN
      RETURN NEXT 'No matching titles';
   END IF;
END
$func$;

Huvudpunkter:

Bortsett från:är knappast vettigt att filtrera på en vy som redan väljer "Fight Club" som sin enda rad. För en meningsfull sökning skulle du inte använda dessa vyer ...



  1. WampServer - mysqld.exe kan inte starta eftersom MSVCR120.dll saknas

  2. SQL - Procedurkolumnfel

  3. Hur tar man Count (*) som variabel från SQL till php?

  4. SCD typ 1