0

私はテーブルを持っています:

CREATE TABLE A(Id INT, Val VARCHAR(100))
INSERT INTO A VALUES (1,'MyData+format(getdate(),''yyMMdd'')+.CSV')

DECLARE @out VARCHAR(100)
SELECT @out = Val FROM A WHERE Id = 1

EXEC sp_send_dbmail @profile_name='MyProfile',
     @recipients='test@gmail.com',
     @subject=@out,
     @body='This is the body of the test message.'

クエリを実行すると のような件名のメールが届きましたが、'MyData+format(getdate(),'yyMMdd')+.CSV'のような出力が欲しいです'MyData20200317.CSV'

テーブルの外側で日付フィールドをマージしたくありません。機能をテーブル内に配置する必要があり、データを処理して結果を取得する必要があります。

ノート:

表の値を変更できる場合は、それも問題ありません。ただし、値はテーブルから選択する必要があります。

実行可能であることを願っています。前もって感謝します。

4

2 に答える 2

1

関数を文字列の外に置きます。

CREATE TABLE A(Id INT, Val VARCHAR(100))
INSERT INTO A VALUES (1,'MyData'+format(getdate(),'yyMMdd')+'.CSV')
于 2020-03-17T13:53:29.610 に答える