sql >> Databasteknik >  >> RDS >> Mysql

Välj slumpmässig rad per distinkt fältvärde?

För att få ett slumpmässigt värde för ett distinkt namn använd

SELECT r.name, 
(SELECT r1.some_info FROM test AS r1 WHERE r.name=r1.name ORDER BY rand() LIMIT 1) AS     'some_info' 
FROM test AS r 
GROUP BY r.name ;  

Lägg den här frågan som den står i din sqlfiddle så fungerar den

Jag använder r och r1 som tabellaliasnamn. Detta kommer också att använda en underfråga för att välja en slumpmässig some_info för namnet

SQL Fiddle är här



  1. Byt in en partition i SQL Server (T-SQL)

  2. Hur man cachelagrar objekt skapade från MySQL-databas

  3. Django JSONFältfiltrering

  4. mysql fel 1451