美文网首页
sqlite随机查询一组记录

sqlite随机查询一组记录

作者: 其时 | 来源:发表于2017-02-12 22:46 被阅读0次

方案一:

SELECT * FROM 表名 ORDER BY RANDOM() LIMIT 1

该方法需对所有记录进行一次排序,性能很差,1百万条记录时可能需几秒时间。


方案二:

SELECT * FROM 表名 WHERE rowid IN (一组随机的行ID)

该方法性能很好,rowid是sqlite表的一个隐藏字段。用程序获得一组行id,计算方法是在1到最大行id之间随机的获取,不过该方法有缺陷,因为rowid可能有空档,就是说,可能随机获取的行id没有对应的记录。

相关文章

  • sqlite随机查询一组记录

    方案一: SELECT * FROM 表名 ORDER BY RANDOM() LIMIT 1 该方法需对所有记录...

  • Python 学习笔记17 - 访问数据库

    使用 SQLite 查询记录: 使用 Cursor 对象执行 insert , update , delete 语...

  • SQLite Delete 语句

    SQLite Delete 语句 SQLite 的 DELETE 查询用于删除表中已有的记录。可以使用带有 WHE...

  • SQLite Update 语句

    SQLite Update 语句 SQLite 的 UPDATE 查询用于修改表中已有的记录。可以使用带有 WHE...

  • 「SQLite学习笔记」Update 语句

    SQLite 的 UPDATE 查询用于修改表中已有的记录。可以使用带有 WHERE 子句的 UPDATE 查询来...

  • 「SQLite学习笔记」Delete 语句

    SQLite 的 DELETE 查询用于删除表中已有的记录。可以使用带有 WHERE 子句的 DELETE 查询来...

  • SQLite 子查询

    SQLite 子查询 子查询或内部查询或嵌套查询是在另一个 SQLite 查询内嵌入在 WHERE 子句中的查询。...

  • sqlite 查询

    参数table是要查询的数据表。参数columns指定要依次获取哪些字段的值。

  • SQLite 查询

    常用命令 打开SQLite数据库: 配置输出格式 https://geek-docs.com/sqlite/sql...

  • SQLite问题及参考资料汇总

    问题 目前使用的是sqlite3_step()来执行查询动作,查询的内容为 实测sqlite3_step()执行效...

网友评论

      本文标题:sqlite随机查询一组记录

      本文链接:https://www.haomeiwen.com/subject/pfczittx.html