Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर (T-SQL) में क्वेरी परिणाम ईमेल करते समय सेपरेटर को अल्पविराम में बदलें

यदि आपने कभी किसी क्वेरी के परिणामों को ईमेल करने के लिए SQL सर्वर के डेटाबेस मेल का उपयोग किया है, तो आपने देखा होगा कि परिणाम डिफ़ॉल्ट रूप से एक स्थान से अलग होते हैं।

यह ठीक है यदि आप एक स्थान-पृथक परिणाम सेट चाहते हैं, लेकिन क्या होगा यदि आप इसे अल्पविराम से अलग करना चाहते हैं?

सौभाग्य से आप @query_result_separator . का उपयोग कर सकते हैं ऐसा करने के लिए तर्क। आप किसी भी विभाजक को निर्दिष्ट करने के लिए इस तर्क का उपयोग कर सकते हैं (जब तक यह एक char(1) . है )।

उदाहरण

विभाजक को अल्पविराम में बदलने का तरीका दिखाने के लिए यहां एक उदाहरण दिया गया है:

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'DB Admin Profile',  
    @recipients = '[email protected]',  
    @body = 'Potential candidates for an Admin job, perhaps?',
    @query = 'SELECT TOP(5) * FROM Artists;',
    @execute_query_database = 'Music',
    @query_result_separator = ',',
    @query_result_no_padding = 1,
    @subject = 'Query results as discussed';

परिणाम:

Potential candidates for an Admin job, perhaps?
ArtistId,ArtistName,ActiveFrom
--------,----------,----------
1,Iron Maiden,1975-12-25
2,AC/DC,1973-01-11
3,Allan Holdsworth,1969-01-01
4,Buddy Rich,1919-01-01
5,Devin Townsend,1993-01-01

(5 rows affected)

ध्यान दें कि मैं @query_result_no_padding . का भी उपयोग कर रहा हूं किसी भी पैडिंग को हटाने का तर्क जो परिणामों पर लागू हो सकता है।

आप @attach_query_result_as_file = 1 . का भी उपयोग कर सकते हैं यदि आवश्यक हो तो परिणामों को एक अलग फ़ाइल में संलग्न करने के लिए।

डिफ़ॉल्ट स्पेस सेपरेटर का उपयोग करने वाला एक उदाहरण

अगर मैं @query_result_separator = ',' . को हटा दूं उपरोक्त उदाहरण से भाग, मेरे परिणाम डिफ़ॉल्ट स्थान वर्ण द्वारा अलग किए गए हैं।

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'DB Admin Profile',  
    @recipients = '[email protected]',  
    @body = 'Potential candidates for an Admin job, perhaps?',
    @query = 'SELECT TOP(5) * FROM Artists;',
    @execute_query_database = 'Music',
    @query_result_no_padding = 1,
    @subject = 'Query results as discussed';

परिणाम:

Potential candidates for an Admin job, perhaps?
ArtistId ArtistName ActiveFrom
-------- ---------- ----------
1 Iron Maiden 1975-12-25
2 AC/DC 1973-01-11
3 Allan Holdsworth 1969-01-01
4 Buddy Rich 1919-01-01
5 Devin Townsend 1993-01-01

(5 rows affected)

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में डेटाटाइम कॉलम की आवश्यकता है जो रिकॉर्ड संशोधित होने पर स्वचालित रूप से अपडेट हो जाता है

  2. इन MySQL डेटाबेस मॉनिटरिंग बेस्ट प्रैक्टिस को आज़माएं

  3. Sql सर्वर स्ट्रिंग टू डेट रूपांतरण

  4. सशर्त एकत्रीकरण प्रदर्शन

  5. SQL सर्वर (T-SQL) में यूनिक्स टाइमस्टैम्प कैसे लौटाएं