数据库serupfax 表tbl_info_qyzl
id      FR         FRZW        lyxl
1       孙日贵       同志          1000
2       王该再       同志          1000
3       陈秀雄       同志          1000
4       吴继光       同志          1000
5       姜总         同志          1000
6       王经理       同志          1000
7       董华         同志          1000
8       董总         同志          1000
9       总经理       同志          1000
10      徐永安       同志          1000
……
1000    王红远       同志          1000问题
1,FR名称中含有  "总" 职务中改为总经理 并将FR中含有的总去掉  只留姓氏2,叫先前450行lyxl变成2000,400-600行的变成3000,600-1000行后面变成5000要解释一下写的语句, 谢谢各位拉
如果第二个实现不了 只回答第一个也可以回答完 请大哥们 在来看下我的留言谢谢哦 

解决方案 »

  1.   

    update tbl_info_qyzl 
      set frzw='总经理',fr=replace(fr,'总','')
    where charindex('总',fr)>0-----------
    update tbl_info_qyzl 
      set lyxl=case when id>=1 and id<=450 then 2000 
                     when id>=400 and id<=600 then 3000
                     when id>600 and id<=1000 then 5000
                end
      

  2.   

    1,FR名称中含有  "总" 职务中改为总经理 并将FR中含有的总去掉  只留姓氏   update tbl_info_qyzl 
        set FR = replace(FR,'总',''),
            FRZW = '总经理'
         where FR like '%总'2,叫先前450行lyxl变成2000,400-600行的变成3000,600-1000行后面变成5000    update tbl_info_qyzl 
        set lyxl =2000
         where id <=450   update tbl_info_qyzl 
        set lyxl =3000
         where id >450 and id <=600
       update tbl_info_qyzl 
        set lyxl =5000
         where id >600 and id <=1000PS:
    叫先前450行lyxl变成2000,
          400-600行的变成3000,
    这两个有重复,400-450之间的是重复的,.
      

  3.   

    叫先前450行lyxl变成2000,400-600行的变成3000,600-1000行后面变成5000 
     这是不是有问题啊。。前面450行已经是2000了  又从400开始到600变成3000   那前面400-450变的有意义吗?
      

  4.   

    1,FR名称中含有  "总" 职务中改为总经理 并将FR中含有的总去掉  只留姓氏 
    update  tbl_info_qyzl  set
       FR        =replace(FR,'总',''),
       FRZW      ='总经理'  
    where FR like '%总%'ps:FR=总经理的名字就变成经理了,职务总经理
    2,叫先前450行lyxl变成2000,400-600行的变成3000,600-1000行后面变成5000 
    update  tbl_info_qyzl  set
       lyxl        =case when id<=450 then 2000 when id >450 and id <=600 then 3000
                    when id >600 and id <=1000 then 4000              ---?
                    else 5000 
                    end
      

  5.   

    我晕小梁也能回答问题 不是乱发了 我还以为又骗我呢
    对拉 在追加个问题 id      FR        FRZW  
    我想按照 这3个 查询有重复的没 怎么写
      

  6.   

    1,FR名称中含有  "总" 职务中改为总经理 并将FR中含有的总去掉  只留姓氏 SQL codeupdate  tbl_info_qyzl  set
       FR        =replace(FR,'总',''),
       FRZW      ='总经理'  
    where FR like '%总%'ps:FR=总经理的名字就变成经理了,职务总经理 
    2,叫先前400行lyxl变成2000,400-600行的变成3000,600-1000行后面变成5000 SQL codeupdate  tbl_info_qyzl  set
       lyxl        =case when id<=400 then 2000 when id >450 and id <=600 then 3000
                    when id >600 and id <=1000 then 4000             
                    else 5000 
                    end
      

  7.   

    update #tb set  FR = REPLACE ([FR],N'总',N'总经理'),
    lyxl = case when id<=4 then 4
    when id>4 and id<=7 then  7
    else 10
    end
      

  8.   

    不好意思是我的错 恩你们答案都是对的 哈哈 在帮我回答个好吗id      FR        FRZW  
    我想按照 这3个 查询看看有重复的没 如果重复了删除 比如
    id      FR        FRZW        lyxl 
    1      孙日贵      同志          1000 
    1      孙日贵      同志          2000
    3      陈秀雄      同志          1000 
    4      吴继光      同志          1000 
    5      姜总        同志          1000 
    6      王经理      同志          1000 
    7      董华        同志          1000 
    8      董总        同志          1000 
    9      总经理      同志          1000 
    10      徐永安      同志          1000 
    …… 
    1000    王红远      同志          1000 不要关lyxl 是要前3个
      

  9.   

    select id,FR,FRZW  
    from tbl_info_qyzl  
    group by id,FR,FRZW
    having count(1)>1
      

  10.   

    SELECT id,FR,FRZW,COUNT(*)
    FROM tb1_info_qyzl
    GROUP BY id,FR,FRZW
    HAVING COUNT(*)>1
      

  11.   

    不知道对不对
    请大家拍砖
    LZ可把我无视update tb1_info_qyzl set fr=replace(fr,'总','总经理')
      

  12.   

    select id,FR,FRZW  
    from tbl_info_qyzl  
    group by id,FR,FRZW
    having count(1)>1
    是查询出来了啊 但是还要删除哦 手动可以删除吗?
      

  13.   

    update tbl_info_qyzl set lyxl=2000 where id <=450
    update tbl_info_qyzl set lyxl=3000 where id>450and id <=600
    update tbl_info_qyzl set lyxl=3000 where id>600and id <=1000
      

  14.   

    update tbl_info_qyzl set fr=replace(fr,'总','总经理')
    update tbl_info_qyzl set lyxl=2000 where id<=450
    update tbl_info_qyzl set lyxl=3000 where id>450 and id<=600
    update tbl_info_qyzl set lyxl=5000 where id>600 and id<=1000
      

  15.   

    不要关lyxl 是要前3个?what mean?