PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : (MYSQL) - Select - WHERE ... AND ... OR



syrius
26.10.2016, 18:14
Hallo,

ich habe eine Tabelle namens "items". Enthalten sind unter anderem die Spalten namens "hallo" und "duda".

"hallo" hat pro Zeile verschiedene oder auch gleiche Inhalte.

Ich möchte mehrere Inhalte aus "hallo" selektieren und zugleich prüfen ob die dazugehörige spalte "duda" = NULL ist.

Mein Ansatz ist


SELECT table.items WHERE items.hallo = 'mama' OR items.hallo = 'meme' OR items.hallo = 'mimi' AND items.duda = NULL;

Ist aber nicht korrekt da mir dann auch alle "items.duda IS NOT NULL" ausgegeben werden.

FLX
26.10.2016, 18:48
Warum nicht einfach mit einer if Anweisung?


SELECT hallo FROM items WHERE duda = NULL

IF(RESULT === 'mama') {
back_mir_kuchen()
}

oder so


SELECT hallo FROM items WHERE duda = NULL AND (hallo = 'mama' OR hallo='meme')

syrius
26.10.2016, 19:11
hätte es gern als reines sql query - einen workaround mit bash könnt ich mir auch selbst bauen. will ich aber nicht müssen wenn es auch allein geht.

TheSyntaX
26.10.2016, 19:25
oder so


SELECT hallo FROM items WHERE duda = NULL AND (hallo = 'mama' OR hallo='meme')

Alternativ auch über "IN" wodurch sich die Klammersetzung erledigt:


... WHERE duda = NULL AND hallo IN ('mama', 'meme', 'mimi');