nanunana
Mitglieder-
Gesamte Inhalte
70 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von nanunana
-
Hallo Zusammen, folgendes habe ich: Tabelle1 und Tabelle2 Tabelle1 hat 2 spalten: sp1,sp2 Sp1 hat die einträge: 1,2,3,4,5,6 Sp2 hat noch keine Einträge, die ist nur ertstellt Tabelle2 hat auch 2 spalten: sp1,sp2 sp1 hat die Einträge: 1,2,3 sp2 hat die Eintäge: a,b,c jetzt möchte ich die sp2 von der Tabelle1 mit der sp2 der Tabelle2 updaten und schreibe mein statment so: update Tabelle1 tl set tl.sp2 = select tb.sp2 from Tabelle2 tb where tl.sp1 = tb.sp1) where exists ( select * from Tabelle2 tb where tl.sp1 = tb.sp1) leider bekomme ich den Fehler:Unterabfrage für eine Zeile liefert mehr als eine Zeile hat das mit der Anzahl der Zeilen der Tabellen was zu zu tun ? wie kann ich mein Befehl eingeben? Danke und Gruss
-
Hallo dim, ich habe, bevor ich die Frage gestellt habe, in den oracle Doku geschaut, und habe auch den Einsatz von replace verstanden, aber nur in den Beispielen Da. bei dem von mir gegebenen Beispiel leider nicht ? nicht umsonst würde ich fragen . Gruss
-
Hallo Zusammen, was für eine Wirkung könnte der folgende Befehl haben: Update Tab1 zr set zr.ZrVOR365 = replace(zr.RAUCH,'.','') ZrVOR365: ist eine Spalte in Tab1 RAUCH: ist keine Spalte der Tabelle Tab1 was möcht hier erreicht werden. Gruss
-
Hallo Dim, Ob es update oder uppdate , das ist nur ein Tippfehler. update ist richtig ich möchte einfach meine Tabelle so aufgestellt haben, das die zeilen in meiner Tabelle, die den Eintrag 'A' in der spalte 2 haben nicht mehr in meiner Tabelle stehen...ich hoffe , ich habe deutlich ausgedrückt. Gruss
-
Morgen, ich habe eine Tabelle mit drei Spalten, die ersten 2 sind befüllt, die dritte nicht, nun ich habe Einträge in der zweiten Spalte, sag mal A und B als einträge, und ich möchte die Zeilen, in der der Buchtabe A steht einfach nicht mehr in meiner Tabelle haben. ich habe folgendes gemacht : und es klappt nich uppdate TAB tab set( tab.spalte1,tab.spalte2)=(select tab.spalte1,tab.spalte2 from TAB tab where tab.spalte2='B') ich habe auch so versucht: uppdate TAB tab set( tab.spalte1,tab.spalte2)=(select bat.spalte1,bat.spalte2 from TAB tab , TAB bat where tab.spalte2='B') es klappt nicht , hat jemand eine Idee Gruss
-
Hallo dim ; ich bin auch der Meinung. beschreibt explain Plan meine Verknüpfung , die ich durch meine where gemacht habe ?? was soll ich vom, Rows | Bytes | Cost , ablesen ? Danke
-
Hallo jan, wo soll ich den select DISTINCT setzen, mein Befehl sieht so aus: insert into Tabelle (spalten1,.....) select ..,...,...,.., from aus meiner 4Tabellen where tab1.spalteID = tab2.spalteID and tab2.spalteID = tab3.spalteID and tab3.spalteID= tab4.spalteID Danke
-
Hallo zusammen, ich habe folgendes, ich habe 4 Tabellen, und in den 4 Tabellen gibt es jeweils eine Spalte, die in den 4 tabellen gleich ausieht mal zu viel oder mal weniger mit einträgen befühlt. aber die 4 spalten über die 4 Tabellen haben einige gemeinsame ID. Nun, ich möchte über das, was die tabellen gemeinsam( gemeinsame ID)haben eine neue Tabelle befüllen und ich schreibe in meiner where bedingung folgendes: where tab1.spalteID = tab2.spalteID and tab2.spalteID = tab3.spalteID and tab3.spalteID= tab4.spalteID NUN tab1 hat 10000ID, tab2 hat 5000ID, tab3 hat 10000, tab4 7000...diese ID sind primärschlüssel dieser 4Tabellen und gleich in diesen 4Tabellen, nur in manchen Tabellen nicht vollständig wenn ich meine Wehre so habe, kriege ich in der neuen Tabelle 20000 zeilen, und das darf nicht sein. ich muss doch soviel zeilen in meiner neuen Tabelle haben wie die Tabelle mit der Minimalen ID_Zeilenanzahl. wenn ich über die Varianteausprobiere: where tab1.spalteID = tab2.spalteID = tab3.spalteID = tab4.spalteID dann bekomme ich einen Fehler : where nicht richtig geschrieben Hat jemand eine Idee. Gruss
-
Hallo Jung, problem ist einigermaßen gelöst, ich habe einfach mit gültigem Datum aktualisiert, und dann konnte ich weiter arbeiten.
-
Hallo Dim nein das ist kein Datumspalte, das ein character string. gibt es die Möglichkeit einfach einen Punkt nach dem 4 und 6 stelle zu integrieren. ein Befehl, der sowas macht
-
Hallo wie date ich up, ich habe eine Spalte, ihr Inhalt_FORMATsieht so aus zzzzzzzz ziel ist die Spalte so zu bringen das ihre Inhalte so aussiehen zzzz.zz.zz also wie schreibe ich nach der 4 und 6 stelle einen PUNKt herzlichen Dank im Voraus
-
Hallo, wieso geht das nicht, in einer Datenbank-tabelle sieht mein datum so aus yyyymmdd neach dem einlesen mit dem Loader. jetzt möchte ich das einfügen( inser to) in einer anderen Tabelle und selectiere so aus: to_date(ab.Vbeginn,'YYYYMMDD'). er sagt Kein gültiger Monat wie so ? Gruss
-
Hallo, ich habe eine Datumspalte(VBEGINN) in einer Text datei, die lese ich mit SQL LOADER wenn ich create Tabelle Name ( VBEGINN VARCHAR2(255),) mache werden die Eintrage 00000000,oder 20060101,oder.... die in der Textdatei liegen eingelsen und befühlt. kein problem!!!! mache ich : create Tabelle Name ( VBEGINN DATE ,) kriege ich den fehler:Tag des Monats muss zwischen 1 und letztem Tag des Monats liegen. jetzt die Frage, wie kann ich im ganzen sagen: Felder mit 00000000 ignorieren und vielleicht mit irgendeinem gültigen Datum ersetzen BS: 2999.01.01. ich denke, die 00000000 enspricht nicht die DatumFormat vom oracle, und deswegen meckert er
-
Hallo du meinst die Query bezüglich meine Fehlermeldung ? ich weiss jetzt woran es liegt, da es um Einfügen vom Datum Spalten geht, und ich ein paar Einträge habe , die so 00000000 aussiehen. der Fehler ist jetzt veschwunden nach dem ich ein festes Datum 'Datum' eingegeben habe wie kann ich beim <Create datum date> formulieren, dass die Einträge mit 00000000 nicht befühlt werden in meiner Spalte.. ich habe es so versucht <Create datum date NOT NULL> ich kriege aber dann den Fehler :Fehler: ORA-01847: Tag des Monats muss zwischen 1 und letztem Tag des Monats liegen. müssten normalerweise, wenn ich NOT NULL setze, die EINträgenmit 00000000 nicht mitgenommen werden oder? Danke
-
Hallo zusammen, hat jemand eine Idee. was diese Fehlermeldung bedeuten könnte. Fehler: ORA-01861: Literal stimmt nicht mit dem Format der Zeichenfolge überein Danke
-
Hallo dim, Das select 1 ist nur dafür da um ein gültiges select zu haben. Wichtig ist die WHERE Bedingung. was meinst du mit einem gültigen Select ?
-
Hallo, kann mir bitte jemand erläutern , was der Befehl ungefäht an sich hat where exists ( Select 1 from Tabelle1 wehre SpalteA = spalteB) and (select count(*) fom tabelle1 whre SpalteA = spalteB ) in der spalteA und B sind Zahlen von 1 bis 2000. die Spalten A und B gehören zwei unterschiedlichen Tabellen... die Kondition oben sitzt auf einen Update befehl was wird mit Select 1 gemeint ? ich danke im voraus
-
Hallo Dim, kannst du bitte mir erläutern , was der Befehl ungefäht an sich hat where exists ( Select 1 from Tabelle1 wehre SpalteA = spalteB) and (select count(*) fom tabelle1 whre SpalteA = spalteB ) in der spalteA und B sind Zahlen von 1 bis 2000. die Spalten A und B gehören zwei unterschiedlichen Tabellen... die Kondition oben sitzt auf eine Update befehl ich dankeim voraus
-
von der Befehlslogik her sollte es nicht funktionieren. Geh mal davon aus, dass Oracle (und auch andere Datenbanken) meistens relativ logisch funktionieren. Dim
-
Hallo Dim, meine Frage war mit einer Lösungsvorstellung verbunden. Dadurch ich nämlich nicht weiss, ob es möglich ist, habe ich halt gefragt. von der Befehlslogik her sollte es nicht funktionieren. wenn ich ein Alias auf eine Tabelle setze, kopiere ich in dem Moment diese Tabelle mit dem Aliasname, so dass ich eine neue Tabelle habe. oder wechselt mit der ganze geschichte die Tabelle nur Ihre Name, alles andere bleibt Datenbank technich gleich. das heißt , wenn ich ein update später machen möchte kann ich über beiden tabellennamen angehen ? Danke
-
Hallo zusammen, ich habe folgendes und zwar: kann man beim Update Befehl in Oracle eine Aliastabelle beim UPDATE EINER TABELLE definieren vom wegen: update taname tn. und kann man auch direkt beim SET anschließend Set (tn.Spaltname..) select.... die Spalte spaltnamebe befüllen. was ich sagen möchte, auch wenn diese Spalte ( Spaltname) gar nicht bestandteil der taname Danke
-
Hallo DIM; kann man beim Update einer Tabelle ihr ein Alias zuweisen dh update TABELLENNAME Aliasname Set( aliasname.Spaltenname..... wenn ja, heisst das es gibt eine zweite Tabelle, die Aliasname heisst, und sie ist völlig unabhängig von der quarsi Vatertabelle,,also es gibt zwei tabellen in meiner datenbank. Gruss
-
Hallo Dim, was meinst du mit : Sofern der PK nicht über die Anwendung selbst vergeben wird Grus
-
ALTER TABLE Tab2 Hallo Dim, ADD CONSTRAINT GO_tab2 PRIMARY KEY (ID) NOLOGGING soll ich das so verstehen, es wird eine variable Namens GO_tab2 erstellt, und aus der Spalte ID eine primärschlüssel-Spalte gemacht. und diese GO_tab2 Variable als so etwas Pointer auf die ID spalte ? wenn ich aus einer Spalte in meiner Tabelle daraus eine Primärschlüssel-spalte mache, vergibt mein oracle system intern eindeutige Zahlen, und diese Zahlen werden in dieser Spalte eingetragen ? oder werden die Einträge, die Schon in dieser Spalte eingetragen Sind, wenn natürlich diese Spalte befühlt ist, eindeutig systemintern bezeichnet ? ich muss demnächst eine Objektuntersuchung zwischen meiner Tabelen machen, und soll eine vernünftige verküpfung zwischen denen machen, Sodass die Eindeutigkeit der Datensätze gewährleistet.
-
Hallo Dim, es läuft alles soweit gut,,, jetzt habe ich noch eine Frage: ALTER TABLE Tab2 ADD CONSTRAINT GO_tab2 PRIMARY KEY (ID) NOLOGGING dieser Befehl erstellt ein Index auf die Spalte ID mit dem Namen GO_tab2 oder wie ist das zu verstehen...index erstellen lautet normalerweise so: Create Index Name ON Tablle ( SPALTE). Gruss