Det borde vara snabbare att tilldela alla fyra variablerna i en fråga (endast en tabell eller indexskanning):
SELECT INTO validador, validador2, validador3, validador4
sum(CASE id_tipo_cifra WHEN 901 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 902 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 905 THEN 1 ELSE 0 END)
,sum(CASE id_tipo_cifra WHEN 907 THEN 1 ELSE 0 END)
FROM webdte.doc_tip_cifra
WHERE id_doc = id_documento;
Samma resultat.
Normalt måste du kontrollera id_doc
för NULL
dessutom, men eftersom du har en WHERE
skick med =
på den kan den inte vara NULL
.