ich ein Stück sehr einfacher SQL, die ich nicht Arbeit machen ...Oracle Geheimnis eine Abfrage auf Zahlen mit Filtern
DECLARE
RESTORE_ID NUMBER;
counts NUMBER;
BEGIN
RESTORE_ID := 100014;
SELECT COUNT(UPDATE_ID) INTO counts FROM TB_ENT WHERE UPDATE_ID = RESTORE_ID;
DBMS_OUTPUT.PUT_LINE(counts);
END;
Wenn ich die oben ausgeführt, ist der Ausgang 0.
Wenn ich laufe es ohne die RESTORE_ID
Variable mit der SELECT-Linie ersetzt:
SELECT COUNT(UPDATE_ID) INTO counts FROM TB_ENT WHERE UPDATE_ID = 100014;
Sie erraten, die Ausgabe ist 1. Warum ??
ist tb_ent.update_id ein NUMBER-Typ? könnte es ein VARCHAR2 sein? – kevinsky
UPDATE_ID ist eine NUMMER und Primärschlüssel der Tabelle, die durch eine SEQUENCE festgelegt wird. – L4zl0w
das funktioniert für mich auf oracle 11. Sie müssen keinen vollständigen Testfall gezeigt haben. Haben Sie eine Spalte namens RESTORE_ID in TB_ENT? – kevinsky