我有一张品号对应的厂商单价的资料表,一个品号可以对应多个供应商,但主供应商只能有一个,若MANSUP='Y',则为主供应商,现在情况是MANSUP这个栏位的值都是'N',如果一个品号有多个供应商,只想把其中一个(不管是那一家厂商)设为'Y',注意一个品号只能设一个主供应商的情况。
结构如下:
ITEMNO  品号
SPLYCD  厂商代号
MANSUP  主供应商码我有想过用条件控制语句来实现,但没有想出来。

解决方案 »

  1.   

    update tb set MANSUP = 'Y' from (select top 1 from tb B where B.ITEMNO = tb.ITEMNO ) 
      

  2.   

    update   tb   set   MANSUP   =   'Y '   from   (select   top   1 *  from   tb   B   where   B.ITEMNO   =   tb.ITEMNO   ) A
      

  3.   

    --如果相同品号中没有相同的厂商代号:
    update a set Mansup='Y' from [Table] a where splycd=(select min(splycd) from [Table] where itemno=a.itemno)