Arrrrre you readyyyyy— for an es Q elllllllll— CHALLENGE!!!!!
I have a user table, let’s say with name and zipcode. I can do the following successfully:
- Select a random user with
SELECT * FROM users ORDER BY RAND(UNIX_TIMESTAMP()) LIMIT 1 - Select all users, with only 1 from each zipcode, using
SELECT * FROM users GROUP BY zipcodeupdate: I simplified this as per Danny’s suggestion below
The only problem is, in case 2, it’s always the same user per-zipcode. I want to randomize which in the grouping gets pulled out. I would prefer that the solution not involve joining the table on itself, although if I don’t find another solution I will probably whip up the self-join solution just for fun.