在SQL Server中,如何在select中创建while循环

用户名

数据将如下所示:

    id  |  data
    ----|---------
    1   |  AABBCC
    2   |  FFDD
    3   |  TTHHJJKKLL

我想要的结果是

    id  |  data
    ----|---------
    1   |  AA
    1   |  BB
    1   |  CC
    2   |  FF
    2   |  DD
    3   |  TT
    3   |  HH
    3   |  JJ
    3   |  KK
    3   |  LL 

我有一个使用游标的SQL代码

DECLARE @table2 table ( id INTEGER, data VARCHAR(500))

DECLARE Cur CURSOR FOR
SELECT id FROM table1

OPEN Cur 

WHILE ( @@FETCH_STATUS = 0 )
    BEGIN
        DECLARE @LoopNum INTEGER
        DECLARE @tempID INTEGER
        DECLARE @tempDATA VARCHAR(255)
        FETCH NEXT FROM Cur INTO @tempID
        SET @tempDATA = SELECT data from table1 where id = @teampID
        SET @LoopNUM = 0
        WHILE @LoopNum< len(@tempDATA) / 2
            BEGIN
            INSERT INTO table2 (id, data)
            VALUES( @tempID, SUBSTRING(@tempDATA, @LoopNum * 2 +1, 2))
            SET @LoopNum = @LoopNum + 1
        END
    END

CLOSE Cur 
DEALLOCATE Cur 

SELECT * FROM table2

我不想使用CURSOR,因为它太慢了,我有很多数据。有人对此有好主意吗?可能吗?

LINQ2伏特加
  1. 创建将传入字符串(例如“ AABBCC”)解析为字符串表(特别是“ AA”,“ BB”,“ CC”)的函数。
  2. 从表中选择ID,然后数据使用CROSS APPLY函数作为参数,这样您将拥有与当前行数据中包含的值一样多的行不需要游标或存储的过程。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在SQL Server查询中执行while循环

来自分类Dev

如何在SQL中创建WHILE循环并避免子查询错误

来自分类Dev

如何在BigQuery SQL中创建多个循环?

来自分类Dev

如何在SQL Server中查找循环依赖表

来自分类Dev

如何在SQL Server中创建从去年的第一个月到当前月份执行的循环?

来自分类Dev

如何在SQL Server引发中创建串联的消息?

来自分类Dev

如何在SQL Server中创建Python CLR过程?

来自分类Dev

如何在SQL Server中创建数据库的别名

来自分类Dev

如何在SQL Server Management Studio中创建存储过程

来自分类Dev

如何在SQL Server中创建Python CLR过程?

来自分类Dev

如何在SQL Server中创建唯一的约束?

来自分类Dev

如何在SQL Server Management Studio中创建存储过程

来自分类Dev

如何在我的 SQL Server 场景中创建 VIEW?

来自分类Dev

如何在 SQL Server 中动态创建计算列?

来自分类Dev

如何在 SQL Server Express 中创建表 - Microsoft

来自分类Dev

如何避免在SQL中的While循环

来自分类Dev

如何避免在SQL中的While循环

来自分类Dev

从select语句在SQL Server中创建视图

来自分类Dev

如何在SQL中使用While循环创建变量

来自分类Dev

如何在SQL Server的While循环中设置变量

来自分类Dev

如何在SQL Server中提高while循环插入性能?

来自分类Dev

如何在java中循环sql语句

来自分类Dev

如何在SQL Server中的两个表中循环日期范围

来自分类Dev

根据sql server中select的输出创建动态sql语句

来自分类Dev

在SQL中嵌套While循环?

来自分类Dev

如何在SQL Plus中创建备份

来自分类Dev

如何在SQL中评估“创建视图”?

来自分类Dev

如何在SQL中的for循环内创建动态变量名

来自分类Dev

是否在Select Statements SQL Server 2008中循环?

Related 相关文章

热门标签

归档