2
Ich habe Tabelle für Musikspuren mit Spalten ID, Künstler, Name, src, sample_start und level. Ich möchte zufällig 4 Reihen auswählen, aber mit verschiedenen Künstlern und einem bestimmten Level. Die nächste, die ich bekam, war dies, aber es ist nicht zufällig, da max ID ausgewählt ist.SQL zufällige 4 Zeilen mit unterschiedlichen Spalte
'SELECT * FROM tracks WHERE level = :level AND id IN
(SELECT max(id) FROM tracks GROUP BY artist)
ORDER BY RAND() LIMIT 4'
Es werden keine unterschiedlichen Künstler ausgewählt, IDs sind standardmäßig unterschiedlich. – user3684545
Entfernen Sie einfach distinct und überprüfen Sie es. –
Geben Sie auch einige Daten Beispiel für die Eingabe und Ausgabe, dann ist es besser. –