如下表: P_producttab
STR7     STR8     ID       ProductID Appellation  Spec
32535 C029928 D0134
35056 C032369 DLFF6479     1240
35942 C033098 J0780-8     1.25*2.47
35944 C033100 J1492-1D     1.25*2.47
35966 C033117 D0748-3     1.25*2.48
36013 C033160 DN1652-4     1.25*2.48
36061 C033204 J1457-1     1.25*2.17
36065 C033208 J1265-2     1.25*2.47
36100 C033242 J625-21     1.25*2.47
36054 C033199 J1426-5     1.25*2.47
36059 C033202 J0612-9     1.25*2.17
36244 C033380 D16004D     1.25*2.48
36246 C033382 D7038-1     1.25*2.48
36253 C033389 背膜纸      1.25*2.47
36520 C033595 D1169-1     1.25*2.47
36585 C033650 暖白KD0016   1.25*2.47
36605 C033668 D0708-17     1.25*2.62
36606 C033669 D1141-1     1.25*2.62
36851 C033867 JM96127     1.25*2.47
36898 C033908 J1099-8     1.25*2.47
37123 C034077 J0671-18     1.25*2.47
37140 C034094 J1477-1     0.96*2.18
37230 C034165 DLF6479     1240最终需要达到的效果
如下表: P_producttab
TR7     STR8      ID       ProductID Appellation  Spec
1.25    2.47 37391 C034299 素1033-110   1.25*2.47
1.25    2.47 37393 C034301 J0706-16     1.25*2.47
1.11    2.47 37688 C034565 J1474-6     1.11*2.47
1.25    2.47 37689 C034566 J1474-5     1.25*2.47
1.25    2.47 37690 C034567 J1474-8     1.25*2.47
1.25    2.47 37691 C034568 J1474-7     1.25*2.47
1.25    2.47 37692 C034569 90G棕色平衡纸   1.25*2.47
1.25    2.47 37693 C034570 素1009-100雾白  1.25*2.47
1.25    2.47 37578 C034468 J1474-4      1.25*2.47
1.23    2.47 37835 C034697 素米黄3002    1.23*2.47
1.25    2.25 37836 C034698 素紫雪青7003  1.25*2.25
1.25    2.47 37837 C034699 素玫瑰红3005  1.25*2.47
0.98    2.18 37855 C034710 J0740-11      0.98*2.18
0.98    2.18 37856 C034711 J1477-1      0.98*2.18
1240              37230 C034165 DLF6479     1240求一SQL 语句   现在比较急着用。
希望各位高手们  帮个忙  谢谢!!!!!!

解决方案 »

  1.   

    同一个表里把表P_producttab里的Spec字段数据长和宽分别更新到STR7  STR8字段里  
      

  2.   

    http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/5.gif
      

  3.   

    如下表: P_producttab 
    STR7    STR8    ID      ProductID Appellation  Spec 
                    32535   C029928   D0134 
                    35056   C032369   DLFF6479     1240 
                    35942   C033098   J0780-8     1.25*2.47 
                    35944   C033100   J1492-1D    1.25*2.47 
                    35966   C033117   D0748-3     1.25*2.48 
    最终需要达到的效果 
    STR7    STR8    ID      ProductID Appellation  Spec 
                    32535   C029928   D0134 
    1240            35056   C032369   DLFF6479     1240 
    1.25   2.47     35942   C033098   J0780-8     1.25*2.47 
    1.25   2.47     35944   C033100   J1492-1D    1.25*2.47 
    1.25   2.48     35966   C033117   D0748-3     1.25*2.48 
      

  4.   

    --> 测试数据:@tb
    declare @tb table([id] varchar(9))
    insert @tb
    select '1240' union all
    select '1.25*2.47' union all
    select '1.25*2.47' union all
    select '1.25*2.48' union all
    select '1.25*2.48'select case when charindex('*',id)>0 then left(id,charindex('*',id)-1) else id end as id1 , 
           case when charindex('*',id)>0 then right(id,len(id)-charindex('*',id)) else '' end as id2 
    from @tb
    /*
    id1       id2
    --------- ---------
    1240      
    1.25      2.47
    1.25      2.47
    1.25      2.48
    1.25      2.48(5 行受影响)
    */
      

  5.   

    select 
    left(Spec+'*',charindex('*',Spec+'*')-1) as str7,
    right('*'+Spec,len('*'+spec)-charindex('*',reverse('*'+Spec))-1) as str8,
    ID,ProductID,Appellation,Spec 
    from tb