Datenbankausgabe in Schleife verbinden

piano

Mitglied
Hallo erstmal,
also meine Frage ist, wie/ob ich es hinbekommen kann, dass die Ausgabe der Daten aus der Datenbank mit Kriterien eingeschränkt werden kann.
Das heißt, kann ich nacheinander (mit Verkettung) weiteres an z.B. $winter = "SELECT * FROM winter"; oder $result = mysql_query($sommer); schreiben? Ich weiß, dass es mit UNION funktioniert (für verschiedene Tabellen) bzw. ich Kriterien wie WHERE mit AND verketten kann, aber nicht, wenn ich immer wieder etwas daranketten möchte mit " . " o.ä...
ich hoffe, ihr versteht, was ich meine :confused:
VG Piano
 
In PHP ist die Datenbankabfrage erst einmal nur eine einfache Zeichenkette. Daher gelten für sie wie bei jeder anderen Zeichenkette die üblichen Regeln und Operatoren. So kannst du die Abfrage auch dynamisch anhand der dem Skript übergebenen Argumente zusammensetzen.
 
Erstmal danke, jedoch funktioniert das -nach meinen Versuchen und Gedanken- nicht:
$sql = "SELECT * FROM fruehling";
$sql .= "SELECT * FROM sommer";

so würde ich dies verketten...
 
Zum Schluss muss ein semantisch korrekter String für die MySQL-Abfrage entstehen. Wie du diesen String erstellst, erweiterst oder veränderst sei dir überlassen.

So wäre es möglich:
PHP:
$sql = "SELECT * FROM fruehling";
$sql .= " UNION SELECT * FROM sommer";

oder so:

PHP:
$sql1 = "SELECT * FROM fruehling";
$sql2 = " WHERE wetter = 'sonnig'";
$sql = $sql1.$sql2;

Es gibt noch unzählige andere Arten Strings zusammenzufügen.

Gruß soyo
 
Zurück