当前位置: 首页 > news >正文

SQL server 数据库练习题及答案(练习3)

一、编程题

公司部门表 department

字段名称

数据类型

约束等

字段描述

id                      

int   

主键,自增               

部门ID

name               

varchar(32)     

非空,唯一

部门名称

description     

varchar(1024)

      

部门简介

员工信息表 person

字段名称

数据类型

约束等

字段描述

id                               

int   

主键,自增            

员工ID

name                        

varchar(32)     

非空        

员工姓名

sex                            

varchar(8)       

非空        

员工性别

department_id       

int   

非空,外键            

员工所在部门ID

age 

int   

非空                

员工年龄

客户信息表  customer

字段名称

数据类型

约束等

字段描述

id

int   

主键,自增   

客户ID   

name

varchar(32)     

非空                

客户姓名

tel                     

varchar(32)     

非空,唯一   

客户电话

person_id

int

非空,外键

所属业务员(员工)ID

detail      

varchar(1024)

客户详细信息

问题要求:

1:创建数据库

2:创建三张表

3:添加最少3个部门信息,如下表

4:添加最少5条员工信息,市场部最少4人,如下表

5:给4中的每位市场部员工添加最少3位客户,总条数不低于12条,如下表

6:将员工ID为5的其中一位姓名为"邓婕"的客户转换成员工ID为2的客户

7:将电话为"13937745615"的客户信息删除

8:查询出所有部门信息

9:查询出所有员工信息

10:查询出所有客户信息

11:查询所有性别为女的员工信息

12:查询所有电话是"139"开头的客户信息

13:查询员工的平均年龄

14:统计公司总共有多少客户信息

15:按照年龄从小到大排序输出所有员工信息

16:按照所属员工ID正序输出所有客户信息

17:统计每个部门的员工数,输出部门ID,员工数量

18:统计出每个员工的客户数量,输出员工ID,客户数量

19:统计出男女员工各有多少人,要求输出性别、人数

20:查询出有员工的部门名称及员工姓名

21:查询出所有部门及其员工信息,没有员工信息的以NULL输出,要求输出部门名称,员工姓名,员工性别,员工年龄。

答案:

/*创建数据库*/
create database gao
on primary 
(name="gao_data",
filename="c:\gao\gao_data.mdf", 
size=8MB,
maxsize=100MB, 
filegrowth=10%) 
log on 
(name="gao_log.ldf", 
filename="c:\gao\gao_log.ldf", 
size=1MB, 
filegrowth=10%) 

use gao/*切换数据库*/

--创建 department表
CREATE TABLE department (
    id INT PRIMARY KEY identity(1,1),
    name VARCHAR(32) NOT NULL UNIQUE,
    description VARCHAR(1024)
);

--创建person表
CREATE TABLE person (
    id INT PRIMARY KEY identity(1,1),
    name VARCHAR(32) NOT NULL,
    sex VARCHAR(8) NOT NULL,
    department_id INT NOT NULL FOREIGN KEY REFERENCES department(id),
    age INT NOT NULL,
);

--创建customer表
CREATE TABLE customer (
    id INT PRIMARY KEY identity(1,1),
    name VARCHAR(32) NOT NULL,
    tel VARCHAR(32) NOT NULL UNIQUE,
    person_id INT NOT NULL FOREIGN KEY REFERENCES person(id),
    detail VARCHAR(1024),
);


--查看department表
select * from department
--添加部门信息
INSERT department values
('人力资源部', '管理人员信息'),
('市场部', '负责市场客户开发及客户维护'),
('财务部', '负责公司财务'),
('软件开发部', '负责公司软件开发')


--查看person表
select * from person
--添加员工信息
INSERT person values
('杨朝来', '男', 1, 35),
('蒋平', '男', 2, 20),
('唐灿', '女', 2, 22),
('马达', '男', 2, 21),
('赵小雪', '女', 2, 18),
('刘小梅', '女', 3, 36)


--查看customer表
select * from customer
--添加客户信息
INSERT customer values
('凡小芬', '13937712345', 2, '已沟通,有意向'),
('文彭凤', '13937745681', 2, '已沟通,有意向'),
('王丽', '1771548746', 2, '电话无法联系'),
('王建华', '13937745615', 3, '已沟通'),
('王梓人', '19912568745', 3, '暂无沟通'),
('王震', '13615648542', 3, '电话无法联系'),
('王保真', '18770126667', 3, '已沟通'),
('王景亮', '18885186808', 4, '已沟通'),
('王丹', '15131426062', 4, '已沟通'),
('邓志勇', '15533605595', 4, '已沟通'),
('邓婕', '15125866659', 5, '已沟通'),
('叶如红', '13722557687', 5, '已沟通'),
('付伟娜', '15831659609', 5, '已沟通')

--6、
update customer
set person_id = 2
where person_id = 5 and name = '邓婕'
--7、
delete from customer
where tel = '13937745615'
--8、
select * from department
--9、
select * from person
--10、
select * from customer
--11、
select * from person
where sex = '女'
--12、
select * from customer where tel like '139%'
--13、
select avg(age) 平均年龄 from person
--14、
select count(id) 总共多少客户 from customer
--15、
select * from person order by age asc
--16、
select * from customer order by id asc
--17、
select department_id,count(name) 员工数量 from person group by department_id
--18、
select person_id,count(name) 客户数量 from customer group by person_id
--19、
select sex,count(name) 人数 from person group by sex
--20、
select de.name,pe.name from department de inner join person pe on de.id=pe.department_id
--21、
select de.name,pe.name,pe.sex,pe.age from department de left join person pe on de.id=pe.department_id

相关文章:

SQL server 数据库练习题及答案(练习3)

一、编程题 公司部门表 department 字段名称 数据类型 约束等 字段描述 id int 主键,自增 部门ID name varchar(32) 非空,唯一 部门名称 description varchar(1024) …...

太绝了!这个食堂服务,戳中了打工人的心巴!

在当今数字化时代,科技的迅猛发展已经渗透到我们生活的方方面面,其中餐饮行业也不例外。食堂作为人们日常生活中不可或缺的一部分,其管理和运营也需要紧跟科技潮流。 智慧收银系统的引入,旨在提高食堂的效率、准确性和服务水平&am…...

围栏中心点

后端返回的数据格式是 [{height: 0,lat: 30.864277169098443,lng:114.35252972024682}{height: 1,lat: 30.864277169098443,lng:114.35252972024682}.........]我们要转换成 33.00494857612568,112.53886564762979;33.00307854503083,112.53728973842954;33.00170296814311,11…...

【go-zero】simple-admin框架 整合ent mysql批量插入 | ent批量插入mysql

一、完整流程 我们需要通过goctls快速生成一个RPC项目 【go-zero】simple-admin 开篇:进击 go-zero 二开框架 simple-admin 加速 go-zero 开发 之 rpc项目快速创建(更新中~) https://ctraplatform.blog.csdn.net/article/details/130087729 1、RPC项目 1.1、.proto synta…...

漏洞复现-泛微OA xmlrpcServlet接口任意文件读取漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…...

Flink CDC 1.0至3.0回忆录

Flink CDC 1.0至3.0回忆录 一、引言二、CDC概述三、Flink CDC 1.0:扬帆起航3.1 架构设计3.2 版本痛点 四、Flink CDC 2.0:成长突破4.1 DBlog 无锁算法4.2 FLIP-27 架构实现4.3 整体流程 五、Flink CDC 3.0:应运而生六、Flink CDC 的影响和价值…...

c语言例题7

以下程序中&#xff0c;主函数调用了LineMax函数&#xff0c;实现在N行M列的二维数组中&#xff0c;找出每一行上的最大值。请填空。 #define N 3 #define M 4 void LineMax(int x[N][M]) { int i,j,p; for(i0; i<N;i) { p0; for(j1; j<M;j) …...

【Linux驱动】最基本的驱动框架 | LED驱动

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《Linux驱动》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 目录 &#x1f3c0;最基本的驱动框架⚽驱动程序框架⚽编程 &#x1f3c0;LED驱动⚽配置GPIO⚽编程…...

前端---表单提交

1. 表单属性设置 <form>标签 表示表单标签&#xff0c;定义整体的表单区域 action属性 设置表单数据提交地址method属性 设置表单提交的方式&#xff0c;一般有“GET”方式和“POST”方式, 不区分大小写 2. 表单元素属性设置 name属性 设置表单元素的名称&#xff0c…...

[C#]Parallel使用

一、 Parallel的使用 1、Parallel.Invoke2、Parallel.For3、Parallel.Foreach二、 Parallel中途退出循环和异常处理 1、当我们使用到Parallel&#xff0c;必然是处理一些比较耗时的操作&#xff0c;当然也很耗CPU和内存&#xff0c;如果我们中途向停止&#xff0c;怎么办呢&…...

docker container 指定gpu设备

1&#xff0c; 在yaml中 Turn on GPU access with Docker Compose | Docker Docs Example of a Compose file for running a service with access to 1 GPU device: services:test:image: nvidia/cuda:12.3.1-base-ubuntu20.04command: nvidia-smideploy:resources:reserva…...

时间Date

你有没有思考过时间问题&#xff1a; 前端为什么可以直接看见时间格式的数据 后端怎么接受的数据&#xff0c;怎么处理的 一般来说&#xff1a;前端传输来数据都是时间格式的字符串&#xff0c;那么后端需要能够解析时间格式的字符串&#xff0c;归功于JSONFormat ,可以解析…...

前端---css 选择器

1. css 选择器的定义 css 选择器是用来选择标签的&#xff0c;选出来以后给标签加样式。 2. css 选择器的种类 标签选择器类选择器层级选择器(后代选择器)id选择器组选择器伪类选择器 3. 标签选择器 根据标签来选择标签&#xff0c;以标签开头&#xff0c;此种选择器影响范…...

【MybatisPlus快速入门】(2)SpringBoot整合MybatisPlus 之 标准数据层开发 代码示例

目录 1 标准CRUD使用2 新增3 删除4 修改5 根据ID查询6 查询所有7 MyBatis-Plus CRUD总结 之前我们已学习MyBatisPlus在代码示例与MyBatisPlus的简介&#xff0c;在这一节中我们重点学习的是数据层标准的CRUD(增删改查)的实现与分页功能。代码比较多&#xff0c;我们一个个来学习…...

如何将自建的ElasticSearch注册成一个服务

ES 服务管理 注册ES服务 创建一个 Elasticsearch 服务配置文件。 ​ sudo vim /etc/systemd/system/elasticsearch.service 将以下内容复制到 elasticsearch.service 文件中&#xff1a; [Unit] Descriptionelasticsearch Afternetwork.target[Service] Typeforking Useresa…...

360勒索病毒:了解最新变种.360,以及如何保护您的数据

导言&#xff1a; 随着科技的飞速发展&#xff0c;网络安全威胁也在不断演变&#xff0c;.360 勒索病毒成为近期备受关注的一种恶意软件。本文91数据恢复将介绍如何恢复被.360 勒索病毒加密的数据文件&#xff0c;并提供一些建议&#xff0c;帮助你预防这种威胁。 如果您在面对…...

vue使用ElementUI搭建精美页面入门

ElementUI简直是css学得不好的同学的福音 ElementUI官网&#xff1a; Element - The worlds most popular Vue UI framework 安装 在vue文件下&#xff0c;用这个命令去安装Element UI。 npm i element-ui -S step1\先切换到vue的目录下去&#xff0c;注意这里面的WARN不是…...

【C->Cpp】深度解析#由C迈向Cpp(2)

目录 &#xff08;一&#xff09;缺省参数 全缺省参数 半缺省参数 缺省参数只能在函数的声明中出现&#xff1a; 小结&#xff1a; &#xff08;二&#xff09;函数重载 函数重载的定义 三种重载 在上一篇中&#xff0c;我们从第一个Cpp程序为切入&#xff0c;讲解了Cpp的…...

WPS中如何根据身份证号生成出生日期并排序

1. wps中如何根据身份证号导出出生日期并排序 1.1 wps中建一张表 1.2 使用转日期格式导出出生日期 DATE(VALUE(MID(C2,7,4)),VALUE(MID(C2,11,2)),VALUE(MID(C2,13,2)))MID(C2, 7, 4)&#xff1a;这部分从单元格 C2 中提取文本字符串&#xff0c;从第7个字符开始提取长度为4的…...

20231222给NanoPC-T4(RK3399)开发板的适配Android11的挖掘机方案并跑通AP6398SV

20231222给NanoPC-T4(RK3399)开发板的适配Android11的挖掘机方案并跑通AP6398SV 2023/12/22 7:54 简略步骤&#xff1a;rootrootrootroot-X99-Turbo:~/3TB$ cat Android11.0.tar.bz2.a* > Android11.0.tar.bz2 rootrootrootroot-X99-Turbo:~/3TB$ tar jxvf Android11.0.tar.…...

BURSTER 9235 (85437090) 应变片信号放大器

BURSTER 9235 (85437090) 应变片信号放大器品牌&#xff1a;BURSTER&#xff08;德国波司特&#xff0c;精密测量技术专家&#xff09;型号&#xff1a;9235内部订货号&#xff1a;85437090类型&#xff1a;直连式&#xff08;In-Line&#xff09;应变片传感器信号放大器一、核…...

ChromePass终极指南:3分钟找回Chrome浏览器所有保存密码

ChromePass终极指南&#xff1a;3分钟找回Chrome浏览器所有保存密码 【免费下载链接】chromepass Get all passwords stored by Chrome on WINDOWS. 项目地址: https://gitcode.com/gh_mirrors/chr/chromepass 你是否曾在Chrome浏览器中保存了重要账号密码&#xff0c;却…...

服务器风扇静音改造:揭秘线序定义的通用破解技巧——以IBM SystemX 3630 M4为案例

1. 为什么服务器风扇这么吵&#xff1f; 服务器风扇的噪音问题困扰着很多运维人员和家庭实验室用户。我拆解过几十台不同品牌的服务器&#xff0c;发现这个问题的根源在于服务器的散热设计理念与家用电脑完全不同。 服务器在设计时优先考虑的是稳定性和散热效率&#xff0c;而不…...

DownKyi:B站视频下载工具的全方位技术解析与应用指南

DownKyi&#xff1a;B站视频下载工具的全方位技术解析与应用指南 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、去水印等&#x…...

DXVK解决方案:基于Vulkan的Direct3D兼容层性能优化指南

DXVK解决方案&#xff1a;基于Vulkan的Direct3D兼容层性能优化指南 【免费下载链接】dxvk Vulkan-based implementation of D3D9, D3D10 and D3D11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk DXVK是一个基于Vulkan的Direct3D 8/9/10/11实现层…...

Kubernetes 集群管理新选择:Kuboard 图形化界面实战解析

1. 为什么你需要Kuboard这样的Kubernetes图形化管理工具 如果你刚开始接触Kubernetes&#xff0c;可能会被它复杂的命令行操作吓到。记得我第一次使用kubectl时&#xff0c;光是记住各种命令参数就花了两周时间。后来团队规模扩大&#xff0c;管理多个集群时&#xff0c;命令行…...

GME-Qwen2-VL-2B效果实测:抽象文字如何匹配具体图片?

GME-Qwen2-VL-2B效果实测&#xff1a;抽象文字如何匹配具体图片&#xff1f; 1. 多模态搜索的突破性体验 想象一下&#xff0c;你脑海中浮现出一句富有哲理的句子&#xff1a;"人生不是裁决书"&#xff0c;却想找一张能表达这种意境的图片。传统搜索引擎会怎么做&a…...

保姆级教程:NLI-DistilRoBERTa快速部署与简单调用指南

保姆级教程&#xff1a;NLI-DistilRoBERTa快速部署与简单调用指南 1. 项目概述与核心能力 NLI-DistilRoBERTa是基于DistilRoBERTa模型的自然语言推理(Natural Language Inference)Web服务&#xff0c;专门用于分析两个句子之间的逻辑关系。这个轻量级模型保留了RoBERTa模型90…...

Mac能够连接校园网,但是无法上网

Mac电脑能够正常连接校园网&#xff0c;但是无法上网解决步骤&#xff1a;打开系统设置&#xff0c;网络&#xff0c;WI-FI&#xff0c;DNS把现有的删掉重置它。原因分析&#xff1a;应该是在使用代理时、访问什么网站被自动篡改了 DNS 设置&#xff0c;导致连接的 DNS 无法解析…...

如何高效访问优质内容?bypass-paywalls-chrome-clean工具全方位使用指南

如何高效访问优质内容&#xff1f;bypass-paywalls-chrome-clean工具全方位使用指南 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的数字时代&#xff0c;大量优质内容被…...