Hallo,
gegeben ist eine MySQL-DB mit der Tabelle Spieler:
Name | Punkte |
---------------
Tim | 0 |
Tom | 5 |
Ute | 5 |
Uta | 0 |
... | 2 |
Jetzt würde ich gerne alle Namen der Spieler mit mind. 1 Punkt abfragen.
Dies mache ich derzeit wie folgt
$abfrage = "SELECT Name FROM Spieler WHERE (Punkte > 0) AND (Name <> 'Tim') AND (Name <> 'Uta')";
Dies funktioniert soweit ganz gut. Ich würde den Code nun jedoch lieber etwas übersichtlicher gestalten soweit möglich.
Dazu fällt mir zunächst auf, dass der nachfolgende Teil der Abfrage tlw. redundant erscheint:
... AND (Name <> 'Tim') AND (Name <> 'Uta')";
Meine Versuche dies zu kürzen sind jedoch fehlgeschlagen:
1. AND (Name <> ('Tim' OR 'Uta'));
2. AND (Name <> OR('Tim', 'Uta'));
Und nun frage ich mich und hiermit euch, ob man auf das wiederholte auflisten von "Name <>" verzichten kann und trotzdem "Tim" und "Uta" von der Abfrage ausschließen kann.(?)
Daraus ergibt sich dann die nächste Frage. Derzeit will ich nur Tim und Uta ausschließen. Weitere Ausnahmen sind jedoch nicht auszuschließen und deshalb wäre der Abgleich mit einem Array/Liste o. ä. noch komfortabler, falls möglich.
$ausnahmen = array("Tim","Uta");
AND (Name <> $array)
Auch hier bin ich für Lösungsansätze dankbar.