access中可实现随机查询要求

access中可实现随机查询要求,第1张

access中可实现随机查询要求参数查询。

根据Access中官方资料显示,可实现随机查询要求,提高查询灵活性的查询方式是参数查询。因此要求参数查询。

Access是由微软发布的关系数据库管理系统。是一个公益型的网上交流社区。

最近实现的一个系统中,遇到了这样的情况:需要从数据库表中随机读取n条记录,必须保证每条记录都不相同.原来的想法是弄两个链表,第一个读取对应数据库表中的所有记录,根据每个记录的ID来生成这个链表第二个链表是有选定的随机读取的记录生成的,这样从第一个链表中选定的,就可以剪掉,以后就不会被选种,把选中的添加到第二个链表中.后来发现,在不同的数据库中完全可以用SQL语句来实现随机选定不同记录.这里把不同数据库实现的语句粘在这里,以供需要的人来参考.Select a random row with MySQL:SELECT column FROM tableORDER BY RAND()LIMIT 1Select a random row with PostgreSQL:SELECT column FROM tableORDER BY RANDOM()LIMIT 1Select a random row with Microsoft SQL Server:SELECT TOP 1 column FROM tableORDER BY NEWID()Select a random row with IBM DB2:SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLYSelect a random record with Oracle:SELECT column FROM( SELECT column FROM tableORDER BY dbms_random.value )WHERE rownum = 1

随机读取可用newid(),取一条可用top 1

举例:如在表test中随机抽取一条未被读取的数据,执行语句为:

select?top?1?*?from?test?order?by?newid()第一次执行结果:

第二次执行结果:

结论:两次执行结果有可能一样,也有可能不一样,也就是实现了随机的效果。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10066954.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存