SQL:选择“直到”
发布时间:2020-12-12 06:01:42 所属栏目:MsSql教程 来源:网络整理
导读:我正在寻找一种方法来选择,直到达到一笔金额. 我的“文档”表有“tag_id”和“size”字段. 我想用tag_id = 26选择所有文档,但我知道我只能处理600个单位的大小.因此,当我知道前10个文件已经加入时,选择100个文件并丢弃其中的90个文件是没有意义的. 600个单位.
我正在寻找一种方法来选择,直到达到一笔金额.
我的“文档”表有“tag_id”和“size”字段. 我想用tag_id = 26选择所有文档,但我知道我只能处理600个单位的大小.因此,当我知道前10个文件已经加入>时,选择100个文件并丢弃其中的90个文件是没有意义的. 600个单位. 因此,目标是:当我要丢弃大部分数据时,不要带回大量数据来解析. …但我也非常希望避免在此应用中使用游标. 我正在使用mysql. 解决方法在添加到最大单位时,您需要某种方式来订购哪些记录优先于其他记录.否则,您如何知道哪些记录总计达到600?SELECT d.id,d.size,d.date_created FROM documents d INNER JOIN documents d2 ON d2.tag_id=d.tag_id AND d2.date_created >= d.date_created WHERE d.tag_id=26 GROUP BY d.id,d.date_created HAVING sum(d2.size) <= 600 ORDER BY d.date_created DESC 这只是一个帮助您入门的基本查询,还有许多问题需要解决: >它在< = 600处停止,因此在大多数情况下,您不会完全填写您的尺寸限制.这意味着您可能需要调整它以允许再记录一次.例如,如果第一条记录是> 600查询将不返回任何内容,这可能是一个问题. 编辑更新后,他添加了他按日期排序的信息. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sqlserver : print 输出文本不全的问题!
- Win10下安装Sql Server 2014反复提示需安装.NET Framework
- sql – 在数据库中创建可变长度文本字段的最“独立于数据库
- Nutz框架学习之一连接sqlserver数据库进行登录操作
- SQL:Last_Value()返回错误的结果(但First_Value()工作正常
- 检查数据库表中某些记录的最快方法?
- r – 基于join的update.table子集
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC CH
- sql – Rails – 一个模型上的两个外键都是指相同的型号
- 什么是SQL数据库备份文件的典型压缩率?