以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- sql分组查询的语句问题(OK) (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=59763) |
-- 作者:HappyFt -- 发布时间:2014/11/10 15:58:00 -- sql分组查询的语句问题(OK)
如上图是一个SQL的表,现想用sql查询语句将表中数据分组查询为如下两列的临时表,将序号组合在一起。如下 表名 序号组合 生产单 1,2,3 订单 2,4,5
请问SQL语句要怎么写?谢谢!
[此贴子已经被作者于2014-11-11 12:29:14编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/11/10 16:07:00 -- 回复楼主,如要做这种效果,需要在数据库编写函数才能完成的。
http://www.cnblogs.com/CrazyWill/archive/2006/02/20/334247.html
建议,不要直接用sql语句,直接用foxtable的代码处理更为方便 |
-- 作者:HappyFt -- 发布时间:2014/11/10 16:36:00 -- 看了下,这么麻烦啊,还以为一条语句就可以,那用foxtable要怎么处理呢,先将唯一表名增加到表中,再遍历每一行表名,从原来表中getcomboliststring再赋值进去? |
-- 作者:有点甜 -- 发布时间:2014/11/10 16:37:00 -- 嗯嗯,是的。 |
-- 作者:HappyFt -- 发布时间:2014/11/11 9:23:00 -- 再请教一个问题,在SQL中建立函数后用下面的语句在sql数据库中查询可以正确生成数据, select 表名,dbo.Ufn_combFid(表名) AS 序号组合 from ftbSet group by tbN order by tbN
但同样的语句在Foxtable中使用command返回临时表时 cmd.CommandText ="select 表名,dbo.Ufn_combFid(表名) AS 序号组合 from ftbSet group by tbN order by tbN"
执行时会提示下面的错误 找不到列 "dbo" 或用户定义的函数或聚合 "dbo.Ufn_combFid",或者名称不明确。
请问在foxtable中要如何调用函数才正确? 谢谢!
|
-- 作者:有点甜 -- 发布时间:2014/11/11 9:25:00 -- cmd.CommandText ="select 表名,Ufn_combFid(表名) AS 序号组合 from ftbSet group by tbN order by tbN" dt = cmd.ExecuteReader() |
-- 作者:HappyFt -- 发布时间:2014/11/11 11:53:00 --
还是会出错?在SQL数据库中就可以 |
-- 作者:有点甜 -- 发布时间:2014/11/11 12:07:00 -- 我测试了一下,你的函数肯定没有定义到这个数据库。
如果定义了,这句代码一定可以执行 select 表名,dbo.Ufn_combFid(表名) AS 序号组合 from ftbSet group by tbN order by tbN |
-- 作者:HappyFt -- 发布时间:2014/11/11 12:15:00 -- 果真如此,原来是连接外部数据源时IP设置成了另外一个IP。谢谢,可以了! [此贴子已经被作者于2014-11-11 12:28:40编辑过]
|