1. 程式人生 > >Sql 查詢郵件地址多行合並一行,再發送郵件

Sql 查詢郵件地址多行合並一行,再發送郵件

Sql

--創建測試表 use Fly go IF OBJECT_ID(‘test‘) IS NOT NULL DROP TABLE test CREATE TABLE test( Id int IDENTITY(1,1) NOT NULL, Name varchar(50) NULL, Judge char(1) NULL, Mail varchar(50) NULL ) GO --插入測試數據 INSERT INTO test ( Name ,Judge ,Mail) SELECT ‘張三‘,‘Y‘,‘[email protected]‘ UNION ALL SELECT ‘李四‘,‘Y‘,‘[email protected]‘ UNION ALL SELECT ‘王五‘,‘N‘,‘[email protected]‘ GO SELECT * FROM test --查詢多行合並 DECLARE @Maliaddress varchar(8000) set @Maliaddress = ‘‘‘‘ + STUFF((SELECT ‘;‘ + Mail FROM test WHERE Judge in (‘Y‘) FOR xml path(‘‘)),1,1,‘‘) + ‘‘‘‘ select @Maliaddress as ‘MailAddress‘ exec msdb.dbo.sp_send_dbmail @profile_name = ‘Fly_Huang‘, @recipients = @Maliaddress, @subject = ‘Test電子郵件的主題‘, @body = ‘Test電子郵件的正文‘, @body_format = ‘HTML‘

Sql 查詢郵件地址多行合並一行,再發送郵件