Excel 请问Intersect和Union是否函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel 请问Intersect和Union是否函数相关的知识,希望对你有一定的参考价值。

1、理解这两个方法需要有些编程的知识。
2、方法也可以叫函数(方法在C语言里叫函数,在其它高级语言里就叫方法),是在编写程序时候调用的。
3、Intersect具体的解释和用法见下面,Union也是一样。这两个函数百度是可以搜索到的
它们是Application对象的方法,分别表示单元格、区域的交集和合集。
下面是例子:

比如有个表格,其中A1:B15的内容你不希望别人改动。那么你就可以使用这个来判断别人是否单击了其中的某个单元格,然后采取相应的措施,比如我这里是将光标移出该区域。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:B15")) Is Nothing Then
Target.Offset(0, 2).Select
End If
End Sub
参考技术A 这两个都不是标准的EXCEL 函数,但是在VBA中都是支持可以使用的。

postgresql----UNION&&INTERSECT&&EXCEPT

多个SELECT语句可以使用UNION,INTERSECT和EXCEPT进行集合处理,其中UNION用于求并集,INTERSECT用于求交集,EXCEPT用于求差集。用法如下

query1 UNION query2 

query1 INTERSECT query2

query1 EXCEPT query2

 

其中query1和query2的SELECT子句中字段个数必须相同,且对应的数据类型必须相同(如果int和bigint结果取bigint,varchar(5)和varchar(10)结果取varchar(10)),字段名可以不同,但是最终结果会以第一个SELECT子句中字段名称返回。

测试表:

 

test=# create table tbl_test1(
test(# a int,
test(# b varchar(10),
test(# c varchar(5)
test(# );
CREATE TABLE
test=# create table tbl_test2(
test(# e int,
test(# f varchar(10),
test(# g varchar(32)
test(# );
CREATE TABLE
test=# insert into tbl_test1(a,b,c) values (1,\'HA\',\'12\'),(2,\'ha\',\'543\');
INSERT 0 2
test=# insert into tbl_test2(e,f,g) values (1,\'HA\',\'dh\'),(3,\'hk\',\'76sskjhk\');
INSERT 0 2

 

 

 

一.UNION

两个查询使用UNION的结果使用图片表示如下:

 

UNION默认会去重,即重复数据只会返回一行,如果需要保留重复数据所有行可以使用UNION ALL。

示例1.

test=# select a,b from tbl_test1 union select e,f from tbl_test2 ;
 a | b  
---+----
 3 | hk
 1 | HA
 2 | ha
(3 rows)

 

示例2.

test=# select a,b from tbl_test1 union all select e,f from tbl_test2 ;
 a | b  
---+----
 1 | HA
 2 | ha
 1 | HA
 3 | hk
(4 rows)

示例3.

test=# select a,c from tbl_test1 union all select e,g from tbl_test2 ;
 a |    c     
---+----------
 1 | 12
 2 | 543
 1 | dh
 3 | 76sskjhk
(4 rows)

 

二.INTERSECT

两个查询使用INTERSECT求交集的结果使用图片表示如下:

 

示例1.

test=# select a,b from tbl_test1 intersect select e,f from tbl_test2 ;
 a | b  
---+----
 1 | HA
(1 row)

 

三.EXCEPT

两个查询使用EXCEPT(A EXCEPT B)求差集的结果:

 

示例1.

test=# select a,b from tbl_test1 except select e,f from tbl_test2 ;
 a | b  
---+----
 2 | ha
(1 row)

 

以上是关于Excel 请问Intersect和Union是否函数的主要内容,如果未能解决你的问题,请参考以下文章

Intersect.Union,Union All,Intersect,Minus区别

LINQ体验——LINQ to SQL语句之Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods

postgresql----UNION&&INTERSECT&&EXCEPT

SQL语句的MINUS,INTERSECT和UNION ALL

SQL语句的MINUS,INTERSECT和UNION ALL

sql 设置操作员 - UNION,UNION ALL,INTERSECT,EXCEPT