小编Squ*_*rel的帖子

如何从 sql 数据透视表中删除空值?

如何将 sql 数据透视表中的空值替换为零?

    DECLARE @cols AS NVARCHAR(MAX),
    @query  AS NVARCHAR(MAX);

SET @cols = STUFF((SELECT distinct ',' + QUOTENAME(c.[Offer_cover]) 
            FROM #cover2 c 
            FOR XML PATH(''), TYPE
            ).value('.', 'NVARCHAR(MAX)') 
        ,1,1,'')


set @query = 'SELECT Ref,role_name,offer_id, ' + @cols + ' from 
            (
                select*
                from #cover2 
           ) x
            pivot 
            (
                 SUM(cover_earning_Count)
                for [offer_cover] in (' + @cols + ') 
            ) p   '
execute(@query)
Run Code Online (Sandbox Code Playgroud)

输出:

Ref         role_name    offer_id   10000   104000  112000
43132_43282 Call Center  1          1       NULL    NULL
43132_43282 Others       1          2       NULL    NULL …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

2
推荐指数
1
解决办法
8475
查看次数

插入后如何查找重复值并删除它们(使用触发器)?

我该如何编写触发器来查找重复值并将其删除。

CREATE TRIGGER [dbo].[deleteduplicate] 
ON [dbo].[products]
AFTER INSERT
AS
BEGIN
    declare @productname nvarchar(20),@prodcutid int
    select productname=@productname,productid=@prodcutid from inserted
    if exists (select productname=@productname from products)
    begin
        delete products
        where @productname=productname
    end

END
Run Code Online (Sandbox Code Playgroud)

sql sql-server triggers duplicates sql-delete

0
推荐指数
1
解决办法
40
查看次数

标签 统计

sql ×2

sql-server ×2

duplicates ×1

sql-delete ×1

triggers ×1