select case 查询样例
时间: 2023-06-12 17:05:15 浏览: 56
好的,这是一个 select case 查询的样例:
```
SELECT
CASE
WHEN age < 18 THEN 'Minor'
WHEN age >= 18 AND age <= 65 THEN 'Adult'
ELSE 'Senior'
END AS age_group,
COUNT(*)
FROM
users
GROUP BY
age_group;
```
这查询将根据用户的年龄,将他们分成三个组:少年、成年人和老年人,并返回每个分组中用户的数量。
相关问题
impala insert overwrite 使用样例
Impala中的`INSERT OVERWRITE`语句用于将查询结果覆盖写入到指定表中,以下是一个使用样例:
假设我们有一个表`mytable`,包含两列`name`和`age`,现在我们需要将`name`列中值为`John`的记录的`age`列值修改为`30`,同时删除`name`列值为`Tom`的记录,可以使用以下语句:
```
INSERT OVERWRITE mytable
SELECT
CASE
WHEN name = 'John' THEN 'John'
ELSE name
END as name,
CASE
WHEN name = 'John' THEN 30
ELSE age
END as age
FROM mytable
WHERE name != 'Tom';
```
这个语句将查询`mytable`表中`name`列值不为`Tom`的记录,并将`name`列值为`John`的记录的`age`列值修改为`30`,最后将结果覆盖写入到`mytable`表中。
请编写出包含员工姓名,工资、工资级别的SELECT语句。分数 5 全屏浏览题目 切换布局 作者 张爽 单位 广东东软学院 请编写出包含员工姓名,工资、工资级别的SELECT语句,其中工资级别使用CASE语句完成,按照emp表中的实际工资进行分类。工资小于6000元的为level1(一级),工资在6000到6500之间(不包含6500)的为level2(二级),工资在6500到7000之间(不包含7000)的为level3(三级),其余为level4(四级)。查询结果按工资升序排列,查询结果如下输出样例所示。
以下是包含员工姓名、工资和工资级别的SELECT语句:
```sql
SELECT emp_name, salary,
CASE
WHEN salary < 6000 THEN 'level1'
WHEN salary >= 6000 AND salary < 6500 THEN 'level2'
WHEN salary >= 6500 AND salary < 7000 THEN 'level3'
ELSE 'level4'
END AS salary_level
FROM emp
ORDER BY salary ASC;
```
其中,使用了CASE语句对工资进行分类,根据不同的工资范围,分别赋值为不同的工资级别。最后按照工资升序排列,输出员工姓名、工资和工资级别三个字段。