成都某公司笔试题sql

-- 1.某公司需要将项目管理清单导入数据库,请建表,清单字段如下:项目编码,项目名称,项目开始时间,项目结束时间,周期(月),项目金额,客户名称,客户地址,备注。并将项目编码设置为主键,表名为ods.project list_info。

CREATE DATABASE IF NOT EXISTS ods;

USE ods;

CREATE TABLE project_list_info (

project_code INT PRIMARY KEY,

project_name VARCHAR(255),

start_date DATE,

end_date DATE,

cycle INT,

project_amount DECIMAL(10,2),

client_name VARCHAR(255),

client_address VARCHAR(255),

remarks VARCHAR(255)

);

-- 2.请查询公司工资排名前三姓"张"的员工信息

SELECT* FROM ods.client WHERE client_name LIKE '张%' ORDER BY client_salary DESC LIMIT 3;

-- 3.请统计公司2021,2022年入职的男性和女性员工数量(性别自行判断)

SELECT COUNT() AS '人数', gender AS '性别' FROM ods.client WHERE end_date BETWEEN '2021-01-01' AND '2022-02-01' GROUP BY gender;
-- 4.请统计每个部门的平均工资 结果按工资降序排序
SELECT AVG(client_salary) AS '平均工资', department AS '部门' FROM ods.client GROUP BY department ORDER BY AVG(client_salary) DESC;
-- 5.请统计公司各个年龄段员工数量(年龄段为(20-30]岁,(30-40]岁,40岁以上不包含40岁)--
SELECT COUNT(
) AS '员工数量',

CASE WHEN age > 20 AND age <= 30 THEN '(20-30]'

WHEN age > 30 AND age <= 40 THEN '(30-40]'

WHEN age > 40 THEN '40岁以上不包含40岁'

END AS '年龄段'

FROM ods.client

GROUP BY CASE WHEN age > 20 AND age <= 30 THEN '(20-30]'

WHEN age > 30 AND age <= 40 THEN '(30-40]'

WHEN age > 40 THEN '40岁以上不包含40岁'

END;

相关推荐
updayday85412 分钟前
电脑换了硬盘、加了内存,资产台账却没更新 - Ping64 硬件资产管理
大数据·网络·数据库·安全·智能路由器
hhhjhl18 分钟前
mime-types 跨端三方库仓颉适配全流程
数据库
广州智造21 分钟前
Radioss中破坏模型FAILTAB1的详细介绍
数据库·人工智能·算法·机器学习·仿真软件·radioss
李兆龙的博客25 分钟前
从一到无穷大 #101:SSD 的工作原理——从 NAND 到数据库读写
数据库·ssd·存储
吹什么轩27 分钟前
MySQL 内置函数全景:日期 / 字符串 / 数学 / 其他,一次讲透(附索引杀手排查)
java·数据库·面试
CS创新实验室31 分钟前
改了模型,数据库为什么能自动跟上?——Django 迁移(migrations)的底层
数据库·django·sqlite
编码追梦人41 分钟前
基于 ESP32-S3 的便携式多参数环境监护仪设计:从硬件选型到 FreeRTOS 多任务落地
数据库·单片机·嵌入式硬件·mongodb·esp32·freertos·低功耗设计
sunburn-1 小时前
数据库增删改查:从 SQL 基础到实践要点
java·数据库·mysql
誰能久伴不乏3 小时前
桌面客户端的运行日志系统:SQLite 分块 + 独立写线程 + 文本降级
数据库·c++·qt·架构·sqlite
程序员清风11 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库