Zur Navigation

slq-einträge mit bestimmtem inhalt ausgleidern

1 tobi

ich habe eine sql abfrage bei welcher die inhalte meiner db ausgegeben werden.


$sql = "
SELECT id, wochentag, spielzeit, spielklasse, heimmannschaft, gastmannschaft, heimergebnis, gastergebnis FROM spielergebnisse ORDER BY spielzeit ";

ich möchte nun alle einträge bei welcher in einer zeile das wort spielfrei vorkommt, nihct aufgelistet bekommen. das wort spielfrei kann nur in der spalte heimmannschaft oder gastmannschaft vorkommen.

gitb es da eine möglickeit, dies bei der sql abfrage mit einzubauen?

danke

mfg

28.07.2010 22:28

2 Jörg

mit "NOT LIKE":

WHERE heimmannschaft NOT LIKE '%spielfrei%' AND gastmannschaft  NOT LIKE '%spielfrei%'

29.07.2010 00:21

3 tobi


$sql = "
SELECT id, wochentag, spielzeit, spielklasse, heimmannschaft, gastmannschaft, heimergebnis, gastergebnis FROM spielergebnisse ORDER BY spielzeit WHERE heimmannschaft NOT LIKE '%spielfrei%' AND gastmannschaft  NOT LIKE '%spielfrei%' ";

Ungültige Abfrage: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE heimmannschaft NOT LIKE '%spielfrei%' AND gastmannschaft NOT LIKE '%spiel' at line 1

EDIT: mein Fehler: WHERE kommt vor ORDER BY

$sql = "
SELECT id, wochentag, spielzeit, spielklasse, heimmannschaft, gastmannschaft, heimergebnis, gastergebnis FROM spielergebnisse WHERE heimmannschaft NOT LIKE '%spielfrei%' AND gastmannschaft  NOT LIKE '%spielfrei%' ORDER BY spielzeit";


dann gehts

29.07.2010 16:55 | geändert: 29.07.2010 16:57

... 1 Jahr später ...

4 tobi

Hallo,

ich muss das Thema nochmals auffrischen.

aktuell ist die Abfrage so:
$sql = "
SELECT id, wochentag, spielzeit, spielklasse, heimmannschaft, gastmannschaft, heimergebnis, gastergebnis FROM spielergebnisse WHERE heimmannschaft NOT LIKE '%spielfrei%' AND gastmannschaft  NOT LIKE '%spielfrei%' ORDER BY spielzeit";
Aus meiner Tabelle spielergebnisse werden nun alle Partien aufgelistet, in der das Wort spielfrei nicht vorkommt.

Ich würde das ganze aber nun noch ein wenig weiter einschränken.
Ich würde gerne noch abhänig von der Spielklasse machen.

MfG Tobi

Edit: bespielsweise spielklasse=Mä Kr Li

13.08.2011 16:11 | geändert: 13.08.2011 16:27

5 Jörg

Weitere Bedingungen kannst du ja mit AND anschließen

Edit: bespielsweise spielklasse=Mä Kr Li

Einen String musst du in SQL in einfache Anführungsstriche setzen

spielklasse = 'Mä'

Sollen 'Kr' und 'Li' weitere Alternativen zu 'Mä' sein? Alternative Bedingungen verbindest du sinnvollerweise mit OR

spielklasse = 'Mä' OR spielklasse = 'Kr'

Die mit OR verknüpften Bedingungen setzt du dann in Klammern, so dass du den geklammerten Ausdruck wiederum mittels AND mit den übrigen Bedingungen verknüpfen kannst

WHERE heimmannschaft NOT LIKE '%spielfrei%'
AND gastmannschaft  NOT LIKE '%spielfrei%'
AND (spielklasse = 'Mä' OR spielklasse = 'Kr' /* etc. */)

13.08.2011 16:54

Beitrag schreiben (als Gast)

Beim Verfassen des Beitrages bitte die Forenregeln beachten.





[BBCode-Hilfe]