Gibt es eine Möglichkeit, eine Abfrage nur einmal auszuführen, um sie in eine Variable auszuwählen, da die Abfrage möglicherweise nichts zurückgibt? In diesem Fall sollte die Variable null sein.
Derzeit kann ich eine select into
Variable nicht direkt ausführen, da sich die Variable PL / SQL beschweren würde, wenn die Abfrage nichts zurückgibt. Ich kann die Abfrage nur zweimal ausführen, wobei die erste die Zählung durchführt. Wenn die Zählung Null ist, setzen Sie die Variable auf Null. Wenn die Zählung 1 ist, wählen Sie sie in die Variable aus.
Der Code wäre also wie folgt:
v_column my_table.column%TYPE;
v_counter number;
select count(column) into v_counter from my_table where ...;
if (v_counter = 0) then
v_column := null;
elsif (v_counter = 1) then
select column into v_column from my_table where ...;
end if;
Vielen Dank.
Update: Der Grund, warum ich keine Ausnahme verwendet habe, ist, dass ich nach dem Zuweisen der noch eine folgende Logik v_column
habe und diese goto
im Ausnahmeabschnitt verwenden muss, um zum folgenden Code zurückzukehren. Ich zögere ein bisschen mit goto
Zeilen.
v_column
und im Ausnahmeabschnitt "goto" verwenden muss, um zum folgenden Code zurückzukehren. Ich zögere ein bisschen mitgoto
Zeilen.