Select random row(s) in SQLite

后端 未结 5 914
感动是毒
感动是毒 2020-11-27 03:29

In MySQL, you can select X random rows with the following statement:

SELECT * FROM table ORDER BY RAND() LIMIT X

This does not, however, wo

5条回答
  •  萌比男神i
    2020-11-27 04:05

    This one solves the negative RANDOM integers, and keeps good performance on large datasets:

    SELECT * FROM table LIMIT 1 OFFSET abs(random() % (select count(*) from table));
    

    where:
    abs(random() % n ) Gives you a positive integer in range(0,n)

提交回复
热议问题