UPDATE [dnt_tags] SET [fcount]=[fcount]+1,[count]=[count]+1
WHERE EXISTS (SELECT [item] FROM [dnt_split](@tags, ' ') AS [newtags] WHERE [newtags].[item] = [tagname])

解决方案 »

  1.   

    declare @tags varchar(500)
    set @tags='你的值'
    UPDATE a SET a.[fcount]=a.[fcount]+1,a.[count]=a.[count]+1 
    from [dnt_tags] a
    WHERE EXISTS (SELECT [item] FROM dbo.[dnt_split](@tags, ' ') AS [newtags] WHERE [newtags].[item] = [tagname]) 
    --dbo.[dnt_split] 这是个函数吧
      

  2.   

    declare @tags varchar(500)
    set @tags='你的值'
    UPDATE a SET a.[fcount]=a.[fcount]+1,a.[count]=a.[count]+1 
    from [dnt_tags] a
    WHERE EXISTS (SELECT [item] FROM dbo.[dnt_split](@tags, ' ') AS [newtags] WHERE [newtags].[item] = a.[tagname]) --补个表别名
    --dbo.[dnt_split] 这是个函数吧
      

  3.   

    ALTER PROCEDURE [dbo].[dnt_createtopictags]
    @tags nvarchar(55),
    @tid int,
    @userid int,
    @postdatetime datetime
    AS
    BEGIN
    exec [dnt_createtags] @tags, @userid, @postdatetime UPDATE [dnt_tags] SET [fcount]=[fcount]+1,[count]=[count]+1
    WHERE EXISTS (SELECT [item] FROM [dnt_split](@tags, ' ') AS [newtags] WHERE [newtags].[item] = [tagname]) INSERT INTO [dnt_topictags] (tagid, tid)
    SELECT tagid, @tid FROM [dnt_tags] WHERE EXISTS (SELECT * FROM [dnt_split](@tags, ' ') WHERE [item] = [dnt_tags].[tagname])
    END
    这个,麻烦大家帮忙!