一个销售表如下:
品名   销量雨衣   30
雨伞   42
雨披   10另一个分级表如下:
销量段   等级
10以下    A
10-20     B
21-30     C
31-40     D
40以上    E要求的结果:
品名      等级
雨衣        C
雨伞        E
雨披        B不能在语句中写死等级,万一哪天等级增加,还要改代码

解决方案 »

  1.   

    比如这样写死等级就不行:
    select 品名,case when 销量<10 then 'A' 
                  when 销量>=10 and  销量<=20  then 'B'
      

  2.   

    另一个分级表如下:
    销量段   等级
    10以下    A
    10-20     B
    21-30     C
    31-40     D
    40以上    E把这个表改为3个字段
    销售量低限  销售量上限  等级
    0           10          A
    10          20          B
    ......这样就比较灵活了!!
      

  3.   

    销量段   等级
    10以下    A
    10-20     B
    21-30     C
    31-40     D
    40以上    E这个销售量字段很难识别啊
      

  4.   

    另一个分级表如下:
    销量段低 销量段高  等级
    1          10      A
    11         20      B
    21         30      C
    31         40      D
    41       1000      Eselect a,品名,b.等级 from 销售表 as a, 分级表 as b where a.销量>=b.销量段低 and a.销量>=b.销量段高