1

コメントから長い文字列を作成しようとしていますが、このspを作成しました

ALTER FUNCTION ugurcode.comment_summary
    (
    @opinionid int
    )
RETURNS nvarchar(max)
AS
    BEGIN
    declare @cs nvarchar(max);
    select @cs+=comment+'\n' from fev_comment where opinionid=@opinionid
    RETURN @cs/* value */
    END

これはnullを返しますが、他にどのようにこれを達成できますか?

4

1 に答える 1

3

交換

declare @cs nvarchar(max);

declare @cs nvarchar(max) = '';

連結は戻り値をNULL返しますNULL

ところで:Microsoftは「集計連結クエリの正しい動作は未定義です。」と言っており、このアプローチは失敗する可能性があります。代わりに確認することをお勧めします( Transact-SQLでの行値の連結XML PATHを参照)。

于 2012-07-10T17:06:21.017 に答える