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

SQL Server:テーブルのすべての varchar 列で Rtrim を実行する方法

    一般的なアプローチとして、次のようなスクリプトを使用して、特定のテーブルに対してステートメントを生成できます (多数の列がある場合に便利です!):

    DECLARE @SQL VARCHAR(MAX)
    DECLARE @TableName NVARCHAR(128)
    SET @TableName = 'YourTableName'
    
    SELECT @SQL = COALESCE(@SQL + ',[', '[') + 
                  COLUMN_NAME + ']=RTRIM([' + COLUMN_NAME + '])'
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = @TableName
        AND DATA_TYPE = 'varchar'
    
    SET @SQL = 'UPDATE [' + @TableName + '] SET ' + @SQL
    PRINT @SQL
      

    これは、SQL ステートメントを出力するだけです。次に、ステートメントをコピーして実行するか、単に EXECUTE(@SQL) を実行できます。 .これはテストされていないため、最初にテスト テーブルで試してみてください :)



    1. LIKE句がある場合の最適なタイプのインデックス作成

    2. クエリ後にクエリセットをフィルタリングすることは可能ですか? django

    3. mysqlの3つのテーブルとの内部結合

    4. Access2022を含むMicrosoftAccessの最新ニュースをチェックしてください!