Postgresql 专题
专题目录
您的位置:database > Postgresql专题 > PostgreSQL交叉连接(CROSS JOIN)
PostgreSQL交叉连接(CROSS JOIN)
作者:--    发布时间:2019-11-20 00:06:07

postgresql跨连接(cross join)将第一个表的每一行与第二个表的每一行相匹配。 它也被称为笛卡尔积。 如果table1具有“x”行,而table2具有“y”行,则所得到的表将具有(x * y)行。

语法:

select coloums   
from table1   
cross join table2

例子:

我们来看一下表employees,具有以下数据。

表2department

创建另一个表department并插入以下值。

-- table: public.department

-- drop table public.department;

create table public.department
(
  id integer,
  dept text,
  fac_id integer
)
with (
  oids=false
);
alter table public.department
  owner to postgres;

-- 插入数据
insert into department values(1,'it', 1);
insert into department values(2,'engineering', 2);
insert into department values(3,'hr', 7);
insert into department values(10,'market', 10);

现在,department有以下数据 -

执行以下跨连接查询:

select name, dept 
from employees  
cross join department;

得到以下结果 -


网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册