PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysql-Abfrage



JAF
01.05.03, 12:36
hallo,

ich hab eine table, die hat ein feld in der machmal "0", "1" oder einfach nichts steht.
wie kann ich nun die auswählen lassen wo nichts steht?

select * where feld like '1'
select * where feld like '0'

funktionieren, aber

select * where feld like ''

funktioniert nicht. kann mir bitte jemand eine tipp geben, danke

mfg johannes

Benno
01.05.03, 12:54
Der like Operator muß mit like'%Such%' gebildet werden.
In Deinem Fall
Select * from Tabelle where Spalte like'%0%'

sebstey
01.05.03, 12:56
Du suchst nach den Feldern, in denen nichts drin steht, oder? Also die, die leer sind... wenn ich dich richtig verstehe ;)

http://www.php4-forum.de/forum.php3?nr=12046

mfg sebstey

Benno
01.05.03, 12:56
Du kannst aber auch nach einem Leerstring suchen lassen
Select * from Tabelle where Feld =''

JAF
01.05.03, 12:58
hallo,

das genau das mit dem leerstring ist eben das was nicht funktioniert, genauso wie NULL...

hab ich beides schon probiert.

mfg johannes

tomes
01.05.03, 13:06
Schon mal das versucht ?

select * from $table where $id IS NULL

T;o)Mes

Benno
01.05.03, 13:09
Stimmt
Select * from Tabelle where Spalte is null;
funktioniert

JAF
01.05.03, 13:15
jetzt gehts mit IS

ich hab immer "LIKE NULL" probiert.
ist da ein unterscheid zu "IS NULL" ?

mfg johannes

tomes
01.05.03, 13:17
Original geschrieben von JAF
jetzt gehts mit IS
ist da ein unterscheid zu "IS NULL" ?

:D

Gibt es LIKE NULL ueberhaupt ? Ein Feld kann doch nur NULL oder NOT NULL sein und nie ungefaehr NULL :D

T;o)Mes

Han
01.05.03, 13:20
LIKE verwendet man nur im Zusammenhang mit dem Modulo-Operator, also dem SQL-Wildcard. Und das macht bei dem Vergleich mit NULL wenig Sinn (ein bißchen NULL? ;))

Was auch gegangen wäre:
select * from $table where $feld!='1' and $feld!='2'
aber die Lösung mit NULL ist eleganter

JAF
01.05.03, 13:23
ok, danke.

jetzt funkts ;-) mfg johannes

Benno
01.05.03, 13:35
Also like'%0%' gibt die Werte heraus wo die 0 vorhanden ist.
Dies habe ich auch nur geschrieben weil ich dachte, das er nicht weiß wie die Syntax von like ist.