要删除某一个表中30%的记录,这个SQL语句该怎样写呢?

解决方案 »

  1.   

    DELETE A
    FROM tb AS A
        JOIN (
            SELECT TOP 30 PERCENT 
                ID
            FROM tb
            ORDER BY NEWID()
        ) AS B
    ON A.ID=B.ID;
      

  2.   

    delete top(30) percent tb
      

  3.   

    2005直接在DELETE里使用TOPDELETE TOP(30) PERCENT 
    FROM Orders;
      

  4.   

    SET ROWCOUNT 300 --假设有1000笔数据
    DELETE FROM TB
    SET ROWCOUNT 0
      

  5.   

    delete tb
    where id in (select top 30 percent id from tb)
    大同小异
      

  6.   

    DELETE TOP(30) PERCENT FROM DB