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

SQL Server(T-SQL)でクエリ結果を電子メールで送信するときに列ヘッダーを削除する方法

    sp_send_dbmailを使用する場合 クエリの結果を電子メールで送信するストアドプロシージャ。列ヘッダーはデフォルトで含まれています。

    @query_result_headerを使用して、列ヘッダーを含めたり除外したりできます。 口論。列ヘッダーを削除するには、@query_result_header = 0を使用します 。

    実例を示します。

    EXEC msdb.dbo.sp_send_dbmail
        @profile_name = 'DB Admin Profile',  
        @recipients = '[email protected]',  
        @body = 'Top 5 cities:',
        @query = 'SELECT TOP(5) * FROM city;',
        @execute_query_database = 'World',
        @query_result_header = 0,
        @query_result_no_padding = 1,
        @subject = 'Query results as discussed';

    結果:

    Top 5 cities:
    1 Kabul AFG Kabol 1780000
    2 Qandahar AFG Qandahar 237500
    3 Herat AFG Herat 186800
    4 Mazar-e-Sharif AFG Balkh 127800
    5 Amsterdam NLD Noord-Holland 731200
    
    (5 rows affected)

    この例では、@query_result_no_padding = 1も使用しました 列に適用される可能性のあるパディングを削除します。

    各列をコンマで区切る場合は、@query_result_separator = ','を使用します。 。

    EXEC msdb.dbo.sp_send_dbmail
        @profile_name = 'DB Admin Profile',  
        @recipients = '[email protected]',  
        @body = 'Top 5 cities:',
        @query = 'SELECT TOP(5) * FROM city;',
        @execute_query_database = 'World',
        @query_result_header = 1,
        @query_result_no_padding = 1,
        @query_result_separator = ',',
        @subject = 'Query results as discussed';

    結果:

    Top 5 cities:
    ID,Name,CountryCode,District,Population
    --,----,-----------,--------,----------
    1,Kabul,AFG,Kabol,1780000
    2,Qandahar,AFG,Qandahar,237500
    3,Herat,AFG,Herat,186800
    4,Mazar-e-Sharif,AFG,Balkh,127800
    5,Amsterdam,NLD,Noord-Holland,731200
    
    (5 rows affected)

    列ヘッダーを含める

    列ヘッダーを明示的に含めるには、@query_result_header = 1を使用します 。

    EXEC msdb.dbo.sp_send_dbmail
        @profile_name = 'DB Admin Profile',  
        @recipients = '[email protected]',  
        @body = 'Top 5 cities:',
        @query = 'SELECT TOP(5) * FROM city;',
        @execute_query_database = 'World',
        @query_result_header = 1,
        @query_result_no_padding = 1,
        @subject = 'Query results as discussed';

    結果:

    Top 5 cities:
    ID Name CountryCode District Population
    -- ---- ----------- -------- ----------
    1 Kabul AFG Kabol 1780000
    2 Qandahar AFG Qandahar 237500
    3 Herat AFG Herat 186800
    4 Mazar-e-Sharif AFG Balkh 127800
    5 Amsterdam NLD Noord-Holland 731200
    
    (5 rows affected)

    1. Microsoft SQL Server2008R2のインデックスの自動インクリメント

    2. SQLテーブルからIDのリストをコンマ区切りの値の文字列として取得するにはどうすればよいですか?

    3. R12.1でTLSを有効にする

    4. SQL Serverデータベースの回復保留状態を修正するにはどうすればよいですか?