如何在MYSQL中使用if查询创建VIRTUAL列

问题描述 投票:1回答:2

我如何创建具有条件的虚拟Cloumn我有一个带有列“ a”,“ b”,“ c”的表'c'应该是虚拟的,并带有条件=>1-如果'b'<16.5,则值应为“ 1”2-如果16.5和18.5之间的“ b”值应为“ 2”3-如果'b'= 25,则值应为“ 3”

mysql if-statement conditional-statements virtual create-table
2个回答
0
投票

[您可以在以下情况下使用情况

 select a, b, case when b <16.5 then 1 
                   when b between 16.5 and 18.5 then 2 
                   when b = 25 then 3  
                  end  c
  from my_table  

您还应该用else处理其他情况

 select a, b, case when b <16.5 then 1 
                   when b between 16.5 and 18.5 then 2 
                   when b = 25 then 3  
                   else 0
                  end  c
  from my_table  

0
投票

算法

STEP1-首先创建一个表。创建表table_name(浮动的b浮动,c浮动);

STEP2-如果b <16.5,则更新c列中的值。更新表名设置c = 1位置b <16.5;

STEP3-如果b在16.5和18.5之间,则更新c列中的值。UPDATE table_name SET c = 2,其中b> = 16.5 AND b <= 18.5;要么更新table_name SET c = 2在16.5和18.5之间的b;

STEP4-如果b = 25,则更新c列中的值。UPDATE table_name SET c = 3 WHERE b = 25;

© www.soinside.com 2019 - 2024. All rights reserved.