Mysql 随机获得表的几条记录
2024-10-20 16:18:31
在做博客文章详情的时候,有一个拓展阅读的功能:
想法一:根据当前文章Id,写死两条链接,Id+1,Id-1,但是文章Id可能被删除,Id不连续,不可取。×
想法二:获得当前文章记录的前一条和后一条记录,好像有点难受,要查询两次。查询两次,可行。√
想法三:直接获取文章表两条随机的记录。一次查询,舒服。√
SELECT *
FROM t_article
WHERE Id >= ((SELECT MAX(Id) FROM t_article)-(SELECT MIN(Id) FROM t_article)) * RAND() + (SELECT MIN(Id) FROM t_article)
LIMIT
ArticleService对应的方法
/// <summary>
/// 延伸阅读-获取两条随机文章
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
public IEnumerable<ArticleModel> GetRandomArticleList(int num)
{
string _where = "WHERE Id >= ((SELECT MAX(Id) FROM t_article)-(SELECT MIN(Id) FROM t_article)) * RAND() + (SELECT MIN(Id) FROM t_article) LIMIT "+num;
return repository.GetByWhere(_where,null,null,null); ;
}
最新文章
- 【Linux学习】Linux下用户组、文件权限详解
- Android中NDK的搭建及简单使用 Android.mk相关介绍 JNI的使用
- 明白何谓Margin Collapse
- [家里蹲大学数学杂志]第235期$L^p$ 调和函数恒为零
- win7出现无法连接到代理服务器的错误,不能上网的问题的解决
- iOS-多线程--(pthread/NSThread/GCD/NSOperation)--总结
- QQ、淘宝、阿里旺旺在线网页链接代码及详解 很实用
- nginx + lua 构建网站防护waf(一)
- URL重写 UrlRewrite
- win7 64位系统调试zkemkeeper.dll出错误解决
- ZooKeeper概述
- IOC:AutoFac使用demo
- Android 工程越来越大,运行变卡解决方法
- pb中遍历查询数据库数据问题(数据库为 sql server)
- 【转帖】Systemd 入门教程:命令篇
- FreeRTOS
- MySQL分布式实现ID自增
- 重识 PWA 进阶到 workbox3
- 数据库日志文件——数据库“xxx”的事务日志已满,原因为“LOG_BACKUP”
- AngularJs 学习 (一)