MYSQL分配"小","中","大"基于计数和数量

时间:2017-08-11 19:07:53

标签: mysql

我的流程的一个方面是产品让我回到过时间。

假设我在一个集合中有一个类似命名项目的列表,但它们有不同的大小

id      base_name           sizing  sum_dimensions
16493   Core LED Pendant            18.00
16494   Core LED Pendant            18.00
16495   Core LED Pendant            26.00
16496   Core LED Pendant            26.00
16497   Core LED Pendant            34.00
16498   Core LED Pendant            34.00
732292  Core LED Pendant            50.50
732293  Core LED Pendant            50.50

我需要找出一种在大小调整列中指定大小的方法。在这种情况下,它是"小","中","大","特大"。有时,根据唯一总和的数量,它可以是“小"”,#34;中","大"或"小","大"。

这是一个很大的产品清单。我可以获得base_name类似的不同总和的计数,但我不知道如何继续进行。 MIN和MAX仅对极端有帮助,但不对中间值有帮助。

这是整个数据设置过程中唯一一部分,当我列出4,000种产品时,这会减慢我的速度。

感谢。

1 个答案:

答案 0 :(得分:1)

你可以在过滤器时使用一个案例

  select 
    id      
    , base_name           
    , sizing  
    , sum_dimensions
    case when sum_dimension  < 20  'small'
         when sum_dimension  between  20.1 and 35  then 'medium'
         when sum_dimension  > 35  then 'large' end as my_size
    from your_table