SQL SERVER,用substring和循环语句对数据操作时出现问题。请大神帮助...

发布网友 发布时间:2024-10-22 13:49

我来回答

2个回答

热心网友 时间:2024-10-26 12:27

1.为什么每个表有11个数据?除了第一个数据不知道其他10个数据是哪里来的。

目测你的第一个图片, 第一行数据的 时间是 2011-10-20 01:47:00
其他行的数据是 2011-10-20 01:48:00。

你需要手动执行一下
SELECT *
FROM [GuangXian].[dbo].[TEMPERATURE_NEW]
where INSTANT='2011-10-20 01:47:00'

看看到底有多少行数据。

2.本来应该在一起的三个数据0xF2478FEA31DC4140,0xA57FAB73EEDD4140,0x78248B0D67F74140分别在三个表的第一行。

你的存储过程的算法, 就是 执行3次 SQL 啊。
所以返回3个结果集合啊。

你是不是希望返回的结果是

只返回一个结果集合

然后
0xF2478FEA31DC4140,0xA57FAB73EEDD4140,0x78248B0D67F74140 分别是第1,2,3 行?

然后下一条数据的, 0x...., 0x...., 0x.... 分别是 第 4,5,6 行?

(最终实际处理的时候, 是根据 T_ARRAY 的长度, 自动判断, 可能有 5行, 也可能有 8行, 或者更多)

如果是上面这种需求的话。

那么需要确认一下你的 SQL Server 数据库的版本。
如果是 SQL Server 2005 以上版本的。
可以尝试使用 表值函数 + 游标 的机制来处理。

热心网友 时间:2024-10-26 12:26

看上去没有什么问题,确定数据库和表没有弄错吗,T_ARRAY是什么类型的?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com