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

SQLクエリで列を動的に選択する

    これを試してください:

    DECLARE @var1 VARCHAR(20)
    DECLARE @sql VARCHAR(255)
    
    SET @var1 = 'Code'
    SET @sql = 'select ' + QUOTENAME(@var1) + ' from [VoucherType] where [DeletedBy] is null and [AutoID] = 1'
    
    EXEC sp_executesql @sql
    

    動的クエリを作成し、sp_executesqlを使用して実行する必要があります

    物事の「動的」側にさらに追加するには、ストアドプロシージャを使用します。例については、こちらをご覧ください:

    http://www.marten-online.com /database/execute-dynamic-sql-in-mssql.html

    つまり...MicrosoftSQLSERVERを使用している場合



    1. Oracleで行を列に動的にピボットする

    2. 大規模なデータセットのランダム化

    3. ubuntu16で--skip-grant-tablesを使用してrootパスワードをリセットすることはできません

    4. 単一のODBCExecuteNonQuery(C#)での複数の挿入ステートメント