Articles of oracle

Fügen Sie mehrere Zeilen von select in eine andere Tabelle ein

Nehmen wir an, ich habe `table1 (col1, col2, col3), die Werte, die in col1 und col3 einzufügen sind, sind gleich, aber die Werte, die in col2 einzufügen sind, stammen vom Ergebnis einer Select-Abfrage. Wie kann ich meine Abfrage schreiben, damit ich diese mehrfach insert kann? Beispiel für die Abfrage: col1 | col2 | col3 1 […]

Bedingtes SUM für Oracle SQL

Ich habe die data in der folgenden Weise: ITEM LOCATION UNIT RETAIL QUANTITY 100 KS 10 -10 200 KS 20 30 Ich möchte die Summe der positiven Mengen (Menge> 0) und die Summe der negativen Mengen (Menge <0). Wie bekomme ich diese Spaltensumme basierend auf der Bedingung?

Warum führt diese Abfrage einen vollständigen Tabellenscan durch?

Die Abfrage: SELECT tbl1.* FROM tbl1 JOIN tbl2 ON (tbl1.t1_pk = tbl2.t2_fk_t1_pk AND tbl2.t2_strt_dt <= sysdate AND tbl2.t2_end_dt >= sysdate) JOIN tbl3 on (tbl3.t3_pk = tbl2.t2_fk_t3_pk AND tbl3.t3_lkup_1 = 2577304 AND tbl3.t3_lkup_2 = 1220833) where tbl2.t2_lkup_1 = 1020000002981587; Fakten: Oracle XE tbl1.t1_pk ist ein Primärschlüssel. tbl2.t2_fk_t1_pk ist ein Fremdschlüssel in dieser t1_pk-Spalte. tbl2.t2_lkup_1 ist indiziert. […]

SQL, um die ältesting datasätze in einer Tabelle zu löschen

Ich suche nach einer einzelnen SQL-Abfrage, die auf einer Oracle-Tabelle ausgeführt wird, die n Anzahl von datasätzen in einer Tabelle behält und den Rest löscht Ich habe Folgendes versucht delete from myTable where pk not in (SELECT pk FROM myTable where rownum <5 order by created DESC) Aber es scheint, dass ich in der verschachtelten […]

Wie kann ich einen datasatz insert und diese Zeile gleichzeitig sperren?

Ich füge eine Zeile mit einer gespeicherten Oracle-Prozedur ein, die für die Verwendung einer autonomen Transaktion konfiguriert ist. Ich möchte diesen datasatz insert, diese Transaktion festschreiben und dann den neu eingefügten datasatz sperren, so dass niemand außer meiner aktuellen session ändern kann (in einer anderen Transaktion natürlich, da der, der sie eingefügt hat, autonom ist). […]

Die Situation mit mehreren überlappenden Indizes in Oracle verstehen

Angesichts der folgenden Indizes für eine Oracle-database: CREATE INDEX subject_x1 ON subject (code); CREATE INDEX subject_x2 ON subject (code, status); Stimmt es, dass der erste Index redundant ist und entfernt werden kann? Wir müssen das richtig machen, da es sich um einen relativ großen Tisch handelt, der ständig durchschlagen wird. Jede oracledokumentation, die dies erklärt […]

ORA-00054 Ressource belegt, wenn Tabelle gelöscht wird

Kann jemand diesen Fehler erklären. ORA-00054 Ressource beschäftigt und mit NOWAIT spezifiziert … Dieser Fehler trat beim Löschen der Tabelle..bcoz der Prozedur und der Pakete auf, die nicht kompiliert wurden.

Mehrere Oracle-Abfragen zusammenführen, um ein Ergebnis zu erzielen

Ist es möglich, die folgende Abfrage als eine Abfrage auszuführen? [Code] select count(*) from tableA; select count(*) from tableB; select count(*) from tableC; select count(*) from tableD; [/Code] dh. das Ergebnis ist ungefähr so |TablA|TableB|TableC|TableD| |50 |300 |30 |9| Vielen Dank

Was ist der Unterschied zwischen dem Kompilieren und Aktualisieren einer materialisierten view?

Wir sind gerade auf ein Problem gestoßen, bei dem materialisierte viewen nicht aktualisiert wurden und ein Kompilierungserrors aufgetreten ist. Einer der leitenden Entwickler sagt, dass er gerade herausgefunden hat, wie man das beheben kann – indem er der Kröte sagt, dass sie die materialisierte view kompilieren soll. Meine Frage ist also ziemlich einfach: Was ist […]

"ORA-00922: fehlende oder ungültige Option" beim Erstellen von Tabellen

Ich habe die folgenden SQL-Befehle in Oracle eingegeben, aber es beschwerte sich "ORA-00922: fehlende oder ungültige Option" CREATE TABLE Student ( StuID NUMBER(15), StuName VARCHAR2(50), Phone VARCHAR2(20), PRIMARY KEY (StuID)) CREATE TABLE Program ( ProCode VARCHAR2(12), ProTitle VARCHAR2(50), PRIMARY KEY (ProCode)) WARUM???