sql >> データベース >  >> RDS >> Sqlserver

列数が可変のテーブルを作成する手順

    DECLARE @sSQL varchar(max),
      @ColumnName CHAR(128)
    
    DECLARE TableCursor CURSOR FOR
      SELECT ColumnName FROM GroupTable
    
    SET @sSQL = 'CREATE TABLE ##NewTempTable ('
    
    OPEN TableCursor
    
    FETCH NEXT FROM TableCursor INTO @ColumnName
    
    WHILE @@FETCH_STATUS = 0
    BEGIN 
    
    SET @sSQL = @sSQL + RTRIM(@ColumnName) + ' CHAR(10) ,'
    
    FETCH NEXT FROM TableCursor INTO @ColumnName
    
    END
    
    CLOSE TableCursor
    
    DEALLOCATE TableCursor
    
    SET @sSQL = @sSQL + ')'
    
    EXEC (@sSQL)
    
    SELECT * FROM ##NewTempTable
    

    これが役立つことを願っています。 DECLARE CURSOR では、"ColumnName" と "TableName" をクエリしている実際の列/テーブルに変更する必要があります。



    1. MySQLのST_DWithin(PostGIS-PostgreSQL)に相当するものは何ですか?

    2. RACシーケンスの競合

    3. エラー:エラー1005:テーブル'cat10e.recording'を作成できません(errno:150)

    4. 集合体データテーブル