如何精简此SQL文?高手请进!

wangzhenzhu1975 2003-10-18 10:59:26
select b.officeid,b.budgetno,b.budgetitem,
(select sum(yearbudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as yearbudget,
(select sum(onebudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as onebudget,
(select sum(twobudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as twobudget,
(select sum(threebudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as threebudget,
(select sum(fourbudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as fourbudget,
(select sum(fivebudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as fivebudget,
(select sum(sixbudget) from budgetinfor where budgetno like rtrim(b.budgetno)+'%' and officeid='8888')
as sixbudget
from budgetinfor b
join financesubject f
on f.subjectid=b.budgetno
where officeid='8888'
and f.lastsubject='0'
...全文
32 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangzhenzhu1975 2003-10-19
  • 打赏
  • 举报
回复
谁有办法?
meteorlg 2003-10-19
  • 打赏
  • 举报
回复
如果速度很慢的话,试一下用临时表
先将数据插入临时表,需要sum的字段用0代替,然后对每个需要sum的字段执行update
wangzhenzhu1975 2003-10-18
  • 打赏
  • 举报
回复
是在同一张表里取,你没见吗?
Ouyangyifeiczy 2003-10-18
  • 打赏
  • 举报
回复
楼主这个问题表述不太清楚。JOIN financesubject 这个表数据好象都没用着,可以放在条件里啊。
另:那么多 sum(...) 如果如你所说,完全可以单独生成一张表,在处理啊
select sum(field1),sum(field2),.... from ... where budgetno like rtrim(b.budgetno)+'%' and officeid='8888'...
余志国外贸网站管理系统V1.2免费版 【功能简介】    本系统为ASP编写,UTF-8编码,采用Access数据库,网站版块主要为5大版块:首页/公司简介/产品展厅/客户留言/联系方式,分中和英语言版本,默认进英首页,产品分类可二级,前台所有数据均可通过后台管理更新,无须手动改动网页,快捷高效,功能精简实用,适合企业网站基本需求。此免费版程序无任何功能限制及后门,可放心使用。    本程序适合ASP新手学习参考,对于程序高手可忽略。 【管理资料】 后台管理路径:http://www.***.com/admin 账号:admin 密码:admin 为了安全请及时更改密码 修改网站logo图片,请直接进入images件夹修改logo.gif件. 【演示地址】 http://www.yuzhiguo.com/website/zhiguolight/ 【件说明】 index.asp 默认首页 c_index.asp / e_index.asp 中、英首页 about.asp / e_about.asp 公司简介 product.asp / e_product.asp 产品展厅 feedback.asp / e_feedback.asp 客户留言 contact.asp /e_contact.asp 联系方式 css_pub.css CSS件 data_name.asp 数据库链接sql.Asp 防注入件 database/sql.mdb 记录注入记录的数据库 database 数据库件夹,需要有写入权限 database/global.asa 数据库件,不建议更改数据库名,此件名可达到无法下载的目的 yuzhiguo-editor 编辑器件夹 up_product/ 产品图片件夹,需要有写入权限 admin/ 后台管理件夹,可以随意改名 2011.04.15 系统更名为余志国外贸网站管理系统V1.2免费版 fckediter编辑器升级到2.6.6版,并做了很多人性化修改,修补安全漏洞 首页产品图片显示改为8个 增加产品搜索功能 2010.12.6 去除生成产品静态功能 改动fckeditor编辑器 数据库防下载功能 优化大量程序代码,结构更合理 留言栏目加入验证码功能,防止垃圾留言产生 去除后台左边导航切换效果 【使用帮助】 本免费版系统不提供任何技术支持,完全是公益事业,有问题请自行解决或到论坛交流(http://bbs.yuzhiguo.com).

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧