Database 从一个表中的分组数据获取随机数据
情况是这样的。我有一个包含以下列的数据库表:Database 从一个表中的分组数据获取随机数据,database,random,sqlite,Database,Random,Sqlite,情况是这样的。我有一个包含以下列的数据库表: 患者ID 患者组 FIRSTNAME LASTNAME 地址 我想从某些患者组中随机获取患者ID 共有5个患者组,表中的总行数约为10000(10K)。 每个患者组的数据数量不同。某些患者组的数据比其他组少。您知道此任务最快的SQL查询吗?顺便说一下,我正在使用SQLite3 如果没有患者组,我可以提出以下查询: SELECT PATIENT_ID FROM TB_Patient WHERE rowid >= (ABS(RANDOM())
患者ID
患者组
FIRSTNAME
LASTNAME
地址
患者组中随机获取患者ID
共有5个患者组
,表中的总行数约为10000(10K)。
每个患者组的数据数量不同。某些患者组
的数据比其他组少。您知道此任务最快的SQL查询吗?顺便说一下,我正在使用SQLite3
如果没有患者组
,我可以提出以下查询:
SELECT PATIENT_ID FROM TB_Patient
WHERE rowid >= (ABS(RANDOM()) % (SELECT MAX(rowid) FROM TB_Patient)) LIMIT 1
你解决这个问题的最佳方法是什么?目标是尽可能快的查询
谢谢。根据您正在运行的患者组,尝试使用不同的
查询:
SELECT PATIENT_ID
FROM TB_Patient
WHERE PATIENT_GROUP = <group_id>
ORDER BY RANDOM()
LIMIT 1
选择患者ID
来自结核病患者
其中,患者组=
随机排序
限制1
我不确定它是否更快,但它应该更容易使用
祝你好运 根据您正在运行的患者组,尝试使用不同的
查询:
SELECT PATIENT_ID
FROM TB_Patient
WHERE PATIENT_GROUP = <group_id>
ORDER BY RANDOM()
LIMIT 1
选择患者ID
来自结核病患者
其中,患者组=
随机排序
限制1
我不确定它是否更快,但它应该更容易使用
祝你好运