Zufällig aus einer Tabelle lesen (MySQL mit PHP)
MaXDoMe
- datenbank
Hallo,
wie das Thema schon sagt, will ich aus einer MySQL-Datenbank etwas zufällig ausgeben. Man kann es mit einem art LOTTO-Spiel vergleichen.
DB-Tabelle:
| NAME |
--------
|Test1 |
|Test2 |
|Test3 |
|Test4 |
Jetzt soll zufällig eines ausgesucht werden und ausgegeben werden.
Ich habe schon gegoogled, aber nichts gefunden.
Gruß
MaXDoMe
Hello,
gewöhnlicherweise verwendet man ein zufällige Sortierung und nimmt dann nur den ersten Satz (falls die Syntax fehlerhaft ist, bitte gerade LIMIT und RAND selber nachschlagen).
SELECT name
FROM table
ORDER BY RAND()
LIMIT 1
MfG
Rouven
Hallo,
SELECT name
FROM table
ORDER BY RAND()
LIMIT 1
Es klappt einfach nicht, es kommt folgender Fehler:
Unknown column '1560555489' in 'order clause'
Gruß
MaXDoMe
hi,
SELECT name
FROM table
ORDER BY RAND()
LIMIT 1Es klappt einfach nicht,
Wie _genau_ sieht deine Query aus?
Welche MySQL-Version benutzt du?
es kommt folgender Fehler:
Unknown column '1560555489' in 'order clause'
http://dev.mysql.com/doc/refman/4.1/en/mathematical-functions.html besagt eindeutig, dass es so geht:
"ORDER BY RAND() combined with LIMIT is useful for selecting a random sample from a set of rows"
gruß,
wahsaga
Hello,
http://dev.mysql.com/doc/refman/4.1/en/mathematical-functions.html besagt eindeutig, dass es so geht:
"ORDER BY RAND() combined with LIMIT is useful for selecting a random sample from a set of rows"
...na ja, und wenn nicht, dann eben über eine virtuelle Spalte...
SELECT name, RAND() AS zufall
FROM table
ORDER BY zufall
LIMIT 1
Wobei mich schon interessieren würde, warum er Probleme hat...
MfG
Rouven
Hallo,
den Fehler mit Unknown column '1560555489' in 'order clause' habe ich behoben. Jedoch habe ich jetzt ein anderes Problem, mir wird von mysql_query(.....) nur 'Resource id #3' ausgegeben, nicht das was in der Zeile in der DB steht. Was mache ich falsch?
Gruß
MaXDoMe
Hello,
den Fehler mit Unknown column '1560555489' in 'order clause' habe ich behoben. Jedoch habe ich jetzt ein anderes Problem, mir wird von mysql_query(.....) nur 'Resource id #3' ausgegeben, nicht das was in der Zeile in der DB steht. Was mache ich falsch?
na ja, genau genommen gar nichts. Genau das soll ja auch rauskommen, siehe Handbuch (übrigens immer mal ein heißer Tipp um was rauszufinden...).
Ansonsten möchtest du z.B. mal einen Blick in die PHP-FAQ werfen.
MfG
Rouven
google mal nach mysql_fetch_array()