SQL中如何使用Case when语句

2023-04-12 04:16:00 sql 语句 如何使用

SQL中如何使用Case when语句

当我们需要根据不同的条件来执行不同的SQL语句时,可以使用Case when语句。Case when语句的语法如下:

case when 条件1 then 语句1 when 条件2 then 语句2 …… when 条件n then 语句n else 语句n+1 end

下面我们通过一个例子来说明如何使用Case when语句。假设我们有一张表tb_user,包含字段user_id、user_name、user_age,现在我们想根据用户的年龄来给用户分组,分为小于18岁、18-30岁、30-50岁、50岁以上四组,那么可以使用如下SQL语句来实现:

select user_id,user_name,case when user_age<18 then '小于18岁' when user_age>=18 and user_age<30 then '18-30岁' when user_age>=30 and user_age<50 then '30-50岁' else '50岁以上' end as age_group from tb_user

上面的SQL语句中,我们使用case when语句来根据用户年龄来分组,当用户年龄小于18岁时,分为“小于18岁”组,当用户年龄大于等于18岁且小于30岁时,分为“18-30岁”组,当用户年龄大于等于30岁且小于50岁时,分为“30-50岁”组,当用户年龄大于等于50岁时,分为“50岁以上”组。

除了上面提到的例子之外,我们还可以根据多个条件来使用Case when语句,例如:

select user_id,user_name,case when user_age<18 then '小于18岁' when user_age>=18 and user_age<30 then '18-30岁' when user_age>=30 and user_age<50 then '30-50岁' else '50岁以上' end as age_group,case when user_sex='男' then '男' when user_sex='女' then '女' else '未知' end as user_sex from tb_user

上面的SQL语句中,我们使用了两个case when语句,一个根据用户年龄来分组,另一个根据用户性别来分组。

总结

以上就是SQL中如何使用Case when语句的详细内容,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农场网站的支持!

如果你觉得本文对你有帮助,欢迎转载,码农场会努力成为你们最喜欢的技术交流平台!

相关文章