127、SQLSERVE中union all 和union的使用场景

ops/2024/12/23 15:36:45/
  1. 使用 SQL Server 中,UNION 和 UNION ALL 是用于合并两个或多个 SELECT 查询结果的操作符。
  2. 两者区别union all 会去重,union 不会去重
  3. 例子

两张表:stu:stu_id,name    emplyee:em_id,name

需求1:sql实现查询,学生和员工一共多少人

select sum(CL) from

(select count(1) as CL from stu   union all  select count(1) as CL  from empolyee )A

需求2:查询学生和员工和多少人

select  学生  personType,count(1) totalNum from stu  [可加条件]

union all

select  员工  personType,count(1) totalNum from empolyee [可加条件]

注意(开发使用总结):1.在使用union all 或者union时,前后两部分查询的字段个数应该相同,字段类型相同或者能够进行自动转换

  1. 不能再union all 或union 的前后两个查询中分别使用order by,只能在使用了union all之后的总数据进行排序

例如:

select * from (

select stu_id as id,name as name from stu   union all  select em_id as id,name as name  from empolyee

)A order by id desc,name asc


http://www.ppmy.cn/ops/144327.html

相关文章

设计模式-中介模式

背景(与外观模式相似) 智能家庭中包括各种设备:闹钟、咖啡机、电视机、窗帘。 主人要看电视时,执行以下操作:闹钟响起-》咖啡机做咖啡-》窗帘自动落下-》电视开始播放 传统思路: 闹钟类接收命令&#x…

八字精批API接口PHP实现返回json数据

引言 八字精批是根据个人的出生信息(包括姓名、性别、出生年、月、日和时)进行命理分析的重要工具。在中国传统文化中,八字命理被广泛应用于个人命运、性格分析以及未来发展的预测。本文将介绍一个八字精批的 API 接口,详细说明其…

leetcode之hot100---206环形链表(C++)

思路一:哈希表 遍历链表,同时借助哈希表判断当前遍历到的节点是否已经被访问过,如果当前节点已被访问过,则说明存在环 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* L…

WPF MVVM 数据表格DataGrid的表头Header无法进行数据绑定

话不多说&#xff0c;直接上案例代码&#xff0c;因为我也不知道为什么不能进行数据绑定。 DataGrid <DataGrid ColumnHeaderHeight"55"ItemsSource"{Binding BottomFormingMolds}" SelectedItem"{Binding SelectedItem3,ModeTwoWay}" …

在 .NET 5.0 运行 .NET 8.0 教程:使用 ASP.NET Core 创建 Web API

前言 因为我本机安装的是vs2019&#xff0c;所以我在使用vs创建项目的时候&#xff0c;只能选择.NET 5.0&#xff0c;而无法选择.NET 8.0 在网上有看到说用vs2019使用.net 8.0 &#xff0c;但是感觉不可靠&#xff0c;要用还是安装vs2022吧。 我因为不想要安装vs2022。 但是微…

半导体制造技术导论(第二版)萧宏 第十二章 化学机械研磨工艺

本章要求 1.列出化学机械研磨工艺的应用 化学机械研磨是一种移除工艺技术&#xff0c;结合化学反应和机械研磨去除沉积的薄膜&#xff0c;使表面更加平滑和平坦&#xff1b;也用于移除表面上大量的电介质薄膜&#xff0c;并在硅衬底上形成浅沟槽隔离STI&#xff1b;还可以从晶圆…

基于RocksDB编写一个简单的SQL数据库|得物技术

一、前言 数据库DBMS是当前互联网开发者最熟悉的基础设施之一&#xff0c;很多后端开发者的入门项目就是一个简单的基于MySQL的数据管理系统。笔者一直想自己编写一个简单的SQL数据库&#xff0c;正好最近正在学习RocksDB和Zig语言的内容&#xff0c;就想利用这个机会作为学习…

List深拷贝后,数据还是被串改

List深拷贝后数据还是被串改 List newList new ArrayList<>(oldList)newList.pushAll(oldList)你甚至想到了java8streamAPI以上还不行 List newList new ArrayList<>(oldList) 这是采用构造参数做到的深拷贝&#xff0c;是没问题的 newList.pushAll(oldList) …