mySQL: Nur Datensätze aufführen bis Buchstabe L
dave
- php
0 TOM
Hallo,
ich habe hier eine Datenabfrage:
$abfrage = "SELECT * FROM automatisierung ORDER BY produktname";
$ergebnis = mysql_query($abfrage);
while ($row = mysql_fetch_array ($ergebnis))
{
echo "Produktname: ".$row[produktname]."Dies ist der Produktname.";
Mit dieser Abfrage werden alle Daten in der Tabelle 'automatisierung' aufgerufen und alle Einträge in der Spalte 'Produktname' aufgelistet.
Wie muss ich den Befehl erweitern, damit ich er nur Buchstaben auflistet bis zum Buchstabe L?
Grüsse
Dave
Hi
naja ein where und dann schau mal unter regulären Ausdrücken nach - müsste da selber nachschaun
MfG TOM
Hallo,
Es könnte reichen "WHERE produktname < "L".
HTH
Gruß Frank
Hallo,
Es könnte reichen "WHERE produktname < "L".
Mhh stimmt, aber wenn dann WHERE productname < "L%" oder?
HTH
Gruß Frank
MfG TOM
Hallo,
Mhh stimmt, aber wenn dann WHERE productname < "L%" oder?
Ich glaube ist nicht nötig. Zumindest nicht bei informix und SQL-Server.
Gruß Frank
.. Fällt mir gerade auf: Falls alle mit L nicht mehr angezeigt werden sollen, ansonsten < K
Gruß Frank
.. Fällt mir gerade auf: Falls alle mit L nicht mehr angezeigt werden sollen, ansonsten < K
Gruß Frank
*g* Das hab ich mir auch schon gedacht, war aber zu Faul für nen Nachtrag
TOM
Erstmal Danke für die Hilfe... (man könnte auch statt < K einfach <= L schreiben oder?)
Mein Befehl sieht jetzt so aus:
$abfrage = "SELECT * FROM de_automatisierung WHERE produktname <= L";
Ich habs auch schon mit "L" probiert und mit "L%" aber es geht nicht, der meckert immer... die Syntax ist doch korrekt oder?
Grüsse
Dave
Erstmal Danke für die Hilfe... (man könnte auch statt < K einfach <= L schreiben oder?)
Normal ja, aber wie man sieht hast du das mit < K und < M auch net gecheckt gg
Mein Befehl sieht jetzt so aus:
$abfrage = "SELECT * FROM de_automatisierung WHERE produktname <= L";
Du musst wenn dann nicht <L sonder < 'L' schreiben!
Grüsse
Dave
Greets TOM
Hi Dave,
nachdem sich die anderen gerade ins Wochenende verabschiedet haben, probieren wirs halt mal - und zwar per Regexp:
$abfrage = "SELECT * FROM de_automatisierung WHERE produktname REGEXP '[1]' ORDER BY produktname";
SELECT * sollte man möglichst vermeiden. Sag doch einfach, welche Werte Du tatsächlich brauchst/willst.
Grüße aus Würzburg
Julian
A-L ↩︎
nachdem sich die anderen gerade ins Wochenende verabschiedet haben, probieren wirs halt mal - und zwar per Regexp:
$abfrage = "SELECT * FROM de_automatisierung WHERE produktname REGEXP '[1]' ORDER BY produktname";
Danke, hat auf Anhieb geklappt :-) Mit [0-L] hab ich dann auch noch die Zahlen alle drin... super!
SELECT * sollte man möglichst vermeiden. Sag doch einfach, welche Werte Du tatsächlich brauchst/willst.
Hmm, vereinzelt hab ich das auch gemacht... da diese Tabelle nur aus 3 Spalten besteht, wovon ich nur 2 benötige, dachte ich der Stern würde genügen.
Grüsse
Dave
A-L ↩︎
Hallo Dave,
Mit [0-L] hab ich dann auch noch die Zahlen alle drin... super!
Wußte jetzt nicht genau, ob die Zahlen am Anfang oder am Ende kommen, und war zu faul zum probieren/nachschlagen. :-)
Mit Regexp kannst Du das ganze auch wunderbar per Adresszeile kontrollieren und entsprechende Anfangs- und Endparameter übergeben (z.B. für die restlichen Treffer ein $anfang=M und $ende=Z) und als Regexp '[1]' setzen. Erspart ggf. das mehrfache Anlegen von Dateien in den sich nur solche Parameter unterschieden.
Hmm, vereinzelt hab ich das auch gemacht... da diese Tabelle nur aus 3 Spalten besteht, wovon ich nur 2 benötige, dachte ich der Stern würde genügen.
Naja, also da sprechen dann noc mehr Gründe dagegen. Faulheit zählt nämlich net. ;-)
Also, zwei Spalten lassen sich ja wirklich noch ausschreiben. Interessant wird es, wenn Du anfängst irgendwann am System rumzubasteln und feststellst, dass Du noch ein, zwei,...viele Spalten mehr brauchst. Dann würdest Du mit obiger Abfrage all diese Werte abfragen, obwohl Du nur ein (oder zwei?) tatsächlich brauchst. Hast Du hingegen von vornherein angegeben, welche Du nur haben willst, steht einer Erweiterung der DB nichts im Wege. Ist halt etwas vorausschauender und vielleicht exakter gedacht.
Grüße aus Würzburg
Julian
Julian
".$anfang."-".$ende." ↩︎
.. Fällt mir gerade auf: Falls alle mit L nicht mehr angezeigt werden sollen, ansonsten < K
Nein, natürlich < M ! Ich mache jetzt Schluss für die Woche.
.. Fällt mir gerade auf: Falls alle mit L nicht mehr angezeigt werden sollen, ansonsten < K
Nein, natürlich < M ! Ich mache jetzt Schluss für die Woche.
löl - ich auch, mir is das jetzt nämlich auch nicht aufgefallen
sollte wohl mal wieder n paar Jahre in die Grundschule gehen, mhh? <g>
TOM
P.S.: Viel Spaß am Wochenende- was machst du? Seh'n uns auf der LoveParade? <gg>