mysql - How to join multiple random values of different tables in a single query? -
i have 3 tables (called results,users,games), first 1 data others, primary auto-increment id this:
results
id | idusers | idgames --------+---------+---------- | | | | | | users
id | name | --------+---------+ 1 | todd | 2 | mario | 3 | luigi | games
id | play | --------+---------+ 1 | game1 | 2 | game2 | 3 | game3 | i wish randomize users id , games id, , join inside results table this:
results
id | idusers | idgames --------+---------+---------- 1 | 3 | 2 2 | 1 | 1 3 | 2 | 1 (also duplicates ok) i know randomize id it's supposed use select * users order newid() , join different tables need use inner join,
but how make working in 1 single query?
one method in mysql use rand() , correlated subquery:
select idusers, (select id games order rand() limit 1) idgames users; if have reasonable amount of data (more few thousand rows), there more efficient methods.
Comments
Post a Comment