利用select case语句统计student表中理科(信科)、工科(计科、电科、金融)、文科(人文、平面设计)专业各有多少人。(注意:本题不是要显示每个专业多少人,而是显示结果类似于:理科***,工科****,文科****)
时间: 2023-09-04 15:09:32 浏览: 49
假设student表中有一个专业字段major,可以使用以下SQL语句统计各个专业人数:
```
SELECT
CONCAT(
'理科', COUNT(CASE WHEN major='信科' THEN 1 END),
',工科', COUNT(CASE WHEN major IN ('计科', '电科', '金融') THEN 1 END),
',文科', COUNT(CASE WHEN major IN ('人文', '平面设计') THEN 1 END)
) AS result
FROM
student;
```
解释一下这个SQL语句:
- 使用COUNT和CASE WHEN语句来统计每个专业的人数,例如当major='信科'时,COUNT函数会计算出这个条件满足的行数,就可以统计出信科专业的人数。
- 使用CONCAT函数将结果串联成一个字符串,例如'理科12,工科20,文科8'。
- 使用AS关键字指定结果集中的列名为result。
注意,以上SQL语句是基于MySQL语法的,不同数据库可能有所不同。
相关问题
2、定义内容为'仲恺': 'Zhongkai', '仲恺全称': 仲恺农业工程学院, '信科院':信息科学与技术学院' 的一个字典,使用程序对字典中的所有元素遍历输出。
可以使用 `for` 循环遍历字典中的所有键值对,并输出它们的值。以下是示例代码:
```python
dict1 = {'仲恺': 'Zhongkai', '仲恺全称': '仲恺农业工程学院', '信科院': '信息科学与技术学院'}
for key, value in dict1.items():
print(key, ':', value)
```
输出结果为:
```
仲恺 : Zhongkai
仲恺全称 : 仲恺农业工程学院
信科院 : 信息科学与技术学院
```
用python语言 2、定义内容为'仲恺': 'Zhongkai', '仲恺全称': 仲恺农业工程学院, '信科院':信息科学与技术学院' 的一个字典,使用程序对字典中的所有元素遍历输出。
可以使用 for 循环遍历字典中的所有元素,并使用 print() 函数输出。
示例代码如下:
```python
dict_zk = {'仲恺': 'Zhongkai', '仲恺全称': '仲恺农业工程学院', '信科院': '信息科学与技术学院'}
for key, value in dict_zk.items():
print(key, ':', value)
```
输出结果为:
```
仲恺 : Zhongkai
仲恺全称 : 仲恺农业工程学院
信科院 : 信息科学与技术学院
```