Veröffentlicht 14. April 200817 j Ich hab ne spalte wo bei manchen datensätzen diese spalte leer ist, also wo manche einträge leer sind, diese möchte ich auffüllen, jetzt hab ich mir des so gedacht: UPDATE tabelle SET spalte = 'blubb' WHERE spalte = ' '; des geht aber net, was muss ich anders machen?
14. April 200817 j des geht aber net wenn "des geht net" heisst: fehlermeldung - dann ist deine spalte nicht alphanumerisch. wenn "des geht net" heisst: keine ergebnisse - dann ist wie der vorposter schon angab, NULL abzufragen. s'Amstel
15. April 200817 j Autor Also das funktioniert so nicht, ich hab das folgende Statement bei 2 Spalte ausprobiert wo es leere Felder gibt, die eine Spalte ist Number, die andere varchar2 SELECT count(spalte) FROM tabelle WHERE spalte IS NULL Immer kommt als Ergebnis 0 raus, des kann aber net sein, da es ja defacto leere felder gibt.
15. April 200817 j Was bedeutet denn leere felder für dich? NULL ist ein leeres feld im Sinne der datenbank. Der Inahlt ist undefiniert (daher auch der Operator IS NULL und nicht = NULL) Wenn Du aber jetzt einfach Strings mit lauter Blanks drinnen stehen hast, dann ist das Feld nicht leer. Dim
15. April 200817 j Autor Nein, das sind keine strings mit lauter strings. in der number-spalte würde das ja sowieso nicht gehn. Ich weiß halt nicht warum der mit der NULL-beschränkung nichts findet
15. April 200817 j SELECT count(spalte) FROM tabelle WHERE spalte IS NULL Immer kommt als Ergebnis 0 raus, des kann aber net sein, da es ja defacto leere felder gibt. IMHO muss das so heißen: SELECT count(*) FROM tabelle WHERE spalte IS NULL count(*) zählt alle Zeilen, count(spalte) die Zeilen, in denen spalte not null ist. hth Reinhold
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.