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

医院网站 整站源码西安装修行业网站建设

医院网站 整站源码,西安装修行业网站建设,重庆智能网站建设多少钱,电子商务网站建设与维护项目五文章目录 WITH 语句和临时表员工部门案例#xff08;单个 WITH 查询#xff09;建表#xff1a;写入数据#xff1a;使用WITH查询 扩展案例#xff1a;员工、部门、薪水和级别#xff08;多个 WITH 查询#xff09;建表和插入数据#xff1a;使用多个WITH查询 结语 WIT… 文章目录 WITH 语句和临时表员工部门案例单个 WITH 查询建表写入数据使用WITH查询 扩展案例员工、部门、薪水和级别多个 WITH 查询建表和插入数据使用多个WITH查询 结语 WITH 语句和临时表 在 SQL 中WITH 语句用于创建临时结果集该结果集在整个 SQL 查询过程中都可使用。这种结构被称为公用表表达式Common Table Expression简称 CTE特别适用于处理复杂的查询。通过 CTE可以将复杂查询拆分为更小、更易管理的部分。 员工部门案例单个 WITH 查询 考虑这样一个场景我们有两个表——员工表 (employees) 和部门表 (departments)。员工表记录了员工的 ID、姓名及其所属的部门 ID而部门表则包含部门的 ID 和名称。 建表 CREATE TABLE test.departments (department_id INT PRIMARY KEY,department_name VARCHAR(50) );CREATE TABLE test.employees (employee_id INT PRIMARY KEY,employee_name VARCHAR(50),department_id INT,FOREIGN KEY (department_id) REFERENCES departments(department_id) ); 写入数据 -- 向部门表中添加数据 INSERT INTO test.departments (department_id, department_name) VALUES (1, IT), (2, HR), (3, Finance);-- 向员工表中添加数据 INSERT INTO test.employees (employee_id, employee_name, department_id) VALUES (101, Alice, 1), (102, Bob, 1), (103, Charlie, 2), (104, David, 3); 使用WITH查询 现在假设我们想要一个报告列出每个部门及其员工数。我们可以使用WITH语句来帮助我们组织查询 WITH DepartmentSummary AS (SELECT department_id, COUNT(*) AS employee_countFROM test.employeesGROUP BY department_id ) SELECT d.department_name, ds.employee_count FROM DepartmentSummary ds JOIN tets.departments d ON ds.department_id d.department_id; ; 扩展案例员工、部门、薪水和级别多个 WITH 查询 员工表 (employees): 包含员工ID、姓名、部门ID。部门表 (departments): 包含部门ID和部门名。薪水表 (salaries): 包含员工ID和薪水。级别表 (levels): 包含员工ID和级别例如经理、高级员工等 建表和插入数据 CREATE TABLE test.salaries (employee_id INT,salary INT,FOREIGN KEY (employee_id) REFERENCES employees(employee_id) );CREATE TABLE test.levels (employee_id INT,level VARCHAR(50),FOREIGN KEY (employee_id) REFERENCES employees(employee_id) );-- 向薪水表和级别表中添加数据 INSERT INTO test.salaries (employee_id, salary) VALUES (101, 70000), (102, 80000), (103, 50000), (104, 60000);INSERT INTO test.levels (employee_id, level) VALUES (101, Senior), (102, Junior), (103, Senior), (104, Manager);使用多个WITH查询 现在我们要生成一个报告显示每个部门的平均薪水和每个级别的员工数量。我们将使用两个临时表来实现这一点 WITH DepartmentSalary AS (SELECT d.department_id, AVG(s.salary) AS average_salaryFROM test.employees eJOIN test.salaries s ON e.employee_id s.employee_idJOIN test.departments d ON e.department_id d.department_idGROUP BY d.department_id ), LevelCount AS (SELECT l.level, COUNT(*) AS countFROM test.employees eJOIN test.levels l ON e.employee_id l.employee_idGROUP BY l.level ) SELECT d.department_name, ds.average_salary, lc.level, lc.count FROM DepartmentSalary ds JOIN test.departments d ON ds.department_id d.department_id CROSS JOIN LevelCount lc; 在这个查询中 DepartmentSalary 临时表计算每个部门的平均薪水。LevelCount 临时表计算每个级别的员工数。最后的查询将这两个临时表与部门表进行连接并使用CROSS JOIN来展示所有可能的部门和级别组合以及对应的平均薪水和员工数。 结语 在总结以上内容时我们可以看到 WITH 语句在 SQL 中的强大作用特别是在处理复杂的数据查询和报告生成时。通过使用公用表表达式 (CTE)我们不仅可以提高查询的可读性和维护性还可以有效地组织和简化复杂的查询逻辑。无论是在处理基础的员工部门数据还是在进行更复杂的多表查询如员工、部门、薪水和级别的案例中WITH 语句都展现了其灵活性和效能。正如这些示例所展示的掌握这些高级 SQL 技巧将大大增强数据处理和分析的能力对任何数据库专业人士或数据分析师都是宝贵的资产。
http://www.yutouwan.com/news/186153/

相关文章:

  • 网站服务器指的是什么wordpress 乱版
  • 做网站怎么备份数据一个新的网站开发语言
  • 网站建设需要版块重庆门户网站开发报价
  • 网站没有做伪静态是什么样子设计公司网站设计
  • jsp网站怎么做邮箱验证码学做文案的网站
  • 网站后台可以做两个管理系统么怎么更改网站关键词
  • 网站关键字怎么做中小学网站建设
  • 福建省建设执业资格注册管理中心网站服务器做php网站
  • 淄博市 网站建设报价网站优化工作室
  • 手机网站怎么优化开公众号
  • wordpress主题会员功能网站建设和网站优化哪个更重要
  • 技术支持 洛阳网站建设演讲介绍自己做的网页
  • 如何做网站关键字优化做网站用什么后台
  • 百度怎么自己做网站安徽互联网前十名公司
  • 如何用dede做带下单的网站合肥做网站行吗
  • 外地人网站备案直播网站制作
  • 网页设计作业视频网站合适做服装的国际网站
  • 香洲区建设局网站宁夏建设厅网站首页
  • 网站改版的方式大致有做网站的协议
  • 制作网站多少钱十大暗网搜索引擎
  • 服装公司网站规划建设制作一个app软件
  • 网站排名降级的原因有哪些天门网站建设设计
  • 沧州网站建设专业定制可以做免费推广的网站吗
  • 做网站容易学吗WordPress是静态么
  • 东铁匠营网站建设WordPress如何清空评论
  • 新浪网站开发语言企业微信公众号注册平台官网
  • 龙岩招聘求职网站有哪些上海搬家公司哪家好
  • 网站开发设计招聘网页开发代码
  • 学习html5的网站newedge wordpress
  • 文件传输协议登录网站怎么建企业自己的网站吗