MySQL使用SQL语句从数据库表中随机获取数据

今天项目中涉及到一个需求,就是用户在刷新页面或者重新进入的时候,页面的广告要随机展示一条,起初的想法是每次从数据库查询出10条广告,然后再从这10条广告里边随机抽取一条。后来想想这么做不妥,因为取出10条数据的时候,就必须有排序规则(指定或者默认),有了这个排序规则,查询出来的这10条数据永远都不会变,那么如果总共有20条广告,那么就另外的10条广告永远也取不到。

后来惊奇的发现,MySQL居然有随机查询这一说,之前确实没用过,其实用法超级简单,语句结构如下:
SELECT * FROM table WHERE field=x ORDER BY  RAND() LIMIT n
套用结构,轻松搞定:
SELECT * FROM `lz_adv` WHERE `status` = 1 ORDER BY RAND() LIMIT 1;
有时候查查手册,还是很有必要的!!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值