where PrimaryAuthor<>'' 或者用group by加max去重

解决方案 »

  1.   


    DELETE  A FROM Book AS a WHERE EXISTS(SELECT 1 FROM Book WHERE ISBN=a.ISBN AND a.Title=b.BookName AND ISNULL(PrimaryAuthor,'')>'') AND ISNULL(PrimaryAuthor,'')=''
      

  2.   

    DELETE a FROM [Table] a WHERE EXISTS(SELECT 1 FROM [Table] WHERE ISBN=a.ISBN AND PrimaryAuthor<>'') AND PrimaryAuthor=''
      

  3.   

    试试这个:
    select *
    from
    (
    select *,
           ROW_NUMBER() over(partition by isbn order by primaryAuthor desc) rownum
    from 表
    )t
    where rownum = 1