J'ai une procédure, où je dois vérifier une certaine vue pour certaines entrées spécifiées et les supprimer en conséquence. Je l'ai utilisé l'approche suivante à cet effet -Postgresql: Comment rendre la requête suivante plus efficace
SELECT id_1,
id_2,
id_3,
id_4
INTO v_id_1,
v_id_2,
v_id_3,
v_id_4
FROM v_doc
WHERE parent_id_1 = p_id_1 -- 'p_' suffix stands for function parameters
AND parent_id_2 = p_id_2
AND parent_id_3 = p_id_3
LIMIT 1
;
WHILE v_id_1 IS NOT NULL
LOOP
-- Code for child document line deletion goes here
SELECT id_1,
id_2,
id_3,
id_4
INTO v_id_1,
v_id_2,
v_id_3,
v_id_4
FROM v_doc
WHERE parent_id_1 = p_id_1
AND parent_id_2 = p_id_2
AND parent_id_3 = p_id_3
LIMIT 1
;
END LOOP;
Est-ce est le moyen efficace, ou il est un moyen plus efficace de faire ce type de requête? Je parle de la façon dont je sélectionne les disques, bien sûr.
@OMG: désolé, mon mauvais. Edited le code. Merci d'avoir signalé les erreurs. –