天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 1753|回复: 8

[已解决] domainId 与 group by 冲突怎么办 ?

[复制链接]
上海怡蓝 发表于 2012-7-5 17:52:15 | 显示全部楼层 |阅读模式
本帖最后由 shary 于 2012-7-6 13:30 编辑

涉及到的查询SQL 都需要添加 domainId , 但是现在 where 条件中出现了 group by 或者聚合函数 year() , sum() 等,这个时候如何处理呢 ?
 楼主| 上海怡蓝 发表于 2012-7-5 18:10:58 | 显示全部楼层
error.jpg
irene 发表于 2012-7-6 09:10:12 | 显示全部楼层
您好,由于平台表单、视图等等的记录是通过id排序的,所以不支持含有order by的sql语句。但是您可以先在数据库客户端建一个view,将需要的数据排好序,然后在视图中查询该view即可
 楼主| 上海怡蓝 发表于 2012-7-6 09:13:41 | 显示全部楼层
请看清楚我的问题,  不是 order by  ~~~
irene 发表于 2012-7-6 09:29:03 | 显示全部楼层
您好,实在抱歉。关于您说的group by以及聚合函数,您也可以通过我上面提到的方法进行处理
 楼主| 上海怡蓝 发表于 2012-7-6 09:37:03 | 显示全部楼层
我没太明白你的意思 ~   我的需求如下:

  1.      sql="select sum(item_budgetAmount) as item_budgetAmount,domainid  from dbo.TLK_REIMBURSEBUDGET where item_budgetSubNo='"+subjectNo+"' and year(item_budgetDate) = " + year ;
  2.     var datas = queryBySQL(sql);
  3.     for (var iter = datas.iterator(); iter.hasNext();) {
  4.           var  item = iter.next();
  5.           value = item.getItemValueAsDouble("budgetAmount");
  6.     }
  7.     value;

复制代码
where条件语句中出现了  year() 函数,导致如2楼的错误,如果你说先创建一个视图,那么视图的SQL 语句该如何写呢 ?
irene 发表于 2012-7-6 09:50:45 | 显示全部楼层
您好,我是意思是先在数据库客户端创建一个view而不是在平台创建一个视图。关于如何在数据库客户端创建视图,您可参考:http://blog.sina.com.cn/s/blog_436732df0100e768.html
 楼主| 上海怡蓝 发表于 2012-7-6 12:04:56 | 显示全部楼层
用 sumBySQL()   可以解决问题 ~   结贴吧 。。。
shary 发表于 2012-7-6 13:30:26 | 显示全部楼层
好的。非常感谢您的分享。

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 12:34

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表