【发布时间】:2011-12-13 11:20:50
【问题描述】:
考虑以下查询。 我为此查询创建了一个游标。 我的问题是 group by 在游标中无法正常工作。但是当我执行查询时,它给出了完美的 group by 结果。
当我使用 FETCH NEXT 和 WHILE 循环迭代游标时,它会为同一个 point_id 提供多个组。
你能帮我解决这个问题吗??? 提前谢谢..
select timestamp as 'TS',REPLACE(REPLACE(POINT_ID,'[','_'),']','_') AS POINT_ID,_VAL
from TCF1_PULLCORD
where timestamp between '11/01/2011 6:30:00 AM' and '12/01/2011 6:29:59 AM'
group by point_id,timestamp,_val
DECLARE MYCUR CURSOR
FOR
select timestamp as 'TS',REPLACE(REPLACE(POINT_ID,'[','_'),']','_') AS POINT_ID,_VAL
from TCF1_PULLCORD
where timestamp between '11/01/2011 6:30:00 AM' and '12/01/2011 6:29:59 AM'
group by point_id,timestamp,_val
【问题讨论】:
-
“光标不能正常工作”是什么意思
-
它给出 POINT_ID = 'DOOR_PROD_ST_1_' 的行,然后给出 POINT_ID = 'DOOR_PROD_ST_10_' 的行,然后给出 'DOOR_PROD_ST_11_' 的行,然后再给出 'DOOR_PROD_ST_1_' 的行......我的意思是分组被划分
-
@Dharmesh:请关闭您的 CAPS LOCK KEY - 这是在考虑 YELLING,这是 粗鲁
-
哦,如果是这样,我真的很抱歉......马克
-
您能告诉我们您是如何实现光标的吗?表结构?样本数据?
标签: sql sql-server sql-server-2008 tsql stored-procedures