- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 3 个表之间创建一个连接 2 个表共享大部分字段(只有几个不同) 我想知道如何创建这个连接,将公共(public)字段合并到一个列中/blank 不存在数据时不常见的那些。
table 1:
PK1 geom field 2 field 3 field 4 field 5
1 1-1 1-2 1-3 1-4 1-5
2 2-1 2-2 2-3 2-4 2-5
3 3-1 3-2 3-3 3-4 3-5
4 4-1 4-2 4-3 4-4 4-5
5 5-1 5-2 5-3 5-4 5-5
table a:
PK1 field 1ab field 2ab field 3ab field 4ab field 5a
1 1-1a 1-2a 1-3a 1-4a 1-5a
2 2-1a 2-2a 2-3a 2-4a 2-5a
3 3-1a 3-2a 3-3a 3-4a 3-5a
4 4-1a 4-2a 4-3a 4-4a 4-5a
5 5-1a 5-2a 5-3a 5-4a 5-5a
table b:
PK1 field 1ab field 2ab field 3ab field 4ab field 5b field 6b
6 1-1b 1-2b 1-3b 1-4b 1-5b 1-6b
7 2-1b 2-2b 2-3b 2-4b 2-5b 2-6b
8 3-1b 3-2b 3-3b 3-4b 3-5b 3-6b
9 4-1b 4-2b 4-3b 4-4b 4-5b 4-6b
10 5-1b 5-2b 5-3b 5-4b 5-5b 5-6b
结果表加入表 1 PK:
PK1 geom field 2ab field 3ab field 4ab field 5a field 5b field 6b
1 1-1 1-2a 1-3a 1-4a 1-5a null null
2 2-1 1-2a 1-3a 1-4a 1-5a null null
3 3-1 1-2a 1-3a 1-4a 1-5a null null
4 4-1 1-2a 1-3a 1-4a 1-5a null null
5 5-1 1-2b 1-3b 1-4b null null null
6 6-1 1-2b 1-3b 1-4b null 1-5b 1-6b
7 7-1 1-2b 1-3b 1-4b null 1-5b 1-6b
8 8-1 1-2b 1-3b 1-4b null 1-5b 1-6b
9 9-11 1-2b 1-3b 1-4b null 1-5b 1-6b
我有匹配来获得所有带有内部连接的列,但我无法获得我正在寻找的结果,关于如何获得这个的任何想法?我在这里检查过,但找不到任何答案,我也尝试过合并但没有得到我期望的结果。
SELECT t1.pk,
t2.field 1ab,
t2.field 1ab... t3.field 5b...
FROM table 1 t1
LEFT JOIN table b t2 ON t1.pk::text = t2.pk::text
LEFT JOIN ocod t3 ON t3.pk::text = t1.pk::text
GROUP BY
t1.pk,
t2.field 1ab,
t2.field 1ab...
最佳答案
我在这个上学到了一些东西。在您的示例中,我看不到表 t1 与所需结果的关系。期望的结果似乎只是 t2 和 t3 的组合。我从这个 Answer 得到了解决方案的内核它使用 NATURAL JOIN .
首先创建表:
BEGIN;
CREATE TABLE t1 (
PK1 text,
field_1 text,
field_2 text,
field_3 text,
field_4 text,
field_5 text
);
INSERT INTO t1 VALUES
('1', '1-1', '1-2', '1-3', '1-4', '1-5'),
('2', '2-1', '2-2', '2-3', '2-4', '2-5'),
('3', '3-1', '3-2', '3-3', '3-4', '3-5'),
('4', '4-1', '4-2', '4-3', '4-4', '4-5'),
('5', '5-1', '5-2', '5-3', '5-4', '5-5');
CREATE TABLE t2 (
PK1 text,
field_1ab text,
field_2ab text,
field_3ab text,
field_4ab text,
field_5a text
);
INSERT INTO t2 VALUES
('1', '1-1a', '1-2a', '1-3a', '1-4a', '1-5a'),
('2', '2-1a', '2-2a', '2-3a', '2-4a', '2-5a'),
('3', '3-1a', '3-2a', '3-3a', '3-4a', '3-5a'),
('4', '4-1a', '4-2a', '4-3a', '4-4a', '4-5a'),
('5', '5-1a', '5-2a', '5-3a', '5-4a', '5-5a');
CREATE TABLE t3 (
PK1 text,
field_1ab text,
field_2ab text,
field_3ab text,
field_4ab text,
field_5b text,
field_6b text
);
INSERT INTO t3 VALUES
('6', '1-1b', '1-2b', '1-3b', '1-4b', '1-5b', '1-6b'),
('7', '2-1b', '2-2b', '2-3b', '2-4b', '2-5b', '2-6b'),
('8', '3-1b', '3-2b', '3-3b', '3-4b', '3-5b', '3-6b'),
('9', '4-1b', '4-2b', '4-3b', '4-4b', '4-5b', '4-6b'),
('10', '5-1b', '5-2b', '5-3b', '5-4b', '5-5b', '5-6b');
COMMIT;
现在进行查询。看来,如果您执行 NATURAL FULL OUTER JOIN,PostgreSQL 将尝试组合尽可能多的列。
SELECT *
FROM (t2 NATURAL FULL OUTER JOIN t3)
ORDER BY pk1::int
这使
关于postgresql - 使用具有相同主键的第三个表连接具有公共(public)字段的两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68228062/
我知道这个问题可能已经被问过,但我检查了所有这些,我认为我的情况有所不同(请友善)。所以我有两个数据集,第一个是测试数据集,第二个是我保存在数据框中的预测(预测值,这就是没有数据列的原因)。我想合并两
在 .loc 方法的帮助下,我根据同一数据框中另一列中的值来识别 Panda 数据框中某一列中的值。 下面给出了代码片段供您引用: var1 = output_df['Player'].loc[out
当我在 Windows 中使用 WinSCP 通过 Ubuntu 连接到 VMware 时,它提示: The server rejected SFTP connection, but it lis
我正在开发一个使用 xml web 服务的 android 应用程序。在 wi-fi 网络中连接时工作正常,但在 3G 网络中连接时失败(未找到 http 404)。 这不仅仅发生在设备中。为了进行测
我有一个XIB包含我的控件的文件,加载到 Interface Builder(Snow Leopard 上的 Xcode 4.0.2)中。 文件的所有者被设置为 someClassController
我在本地计算机上管理 MySQL 数据库,并通过运行以下程序通过 C 连接到它: #include #include #include int main(int argc, char** arg
我不知道为什么每次有人访问我网站上的页面时,都会打开一个与数据库的新连接。最终我到达了大约 300 并收到错误并且页面不再加载。我认为它应该工作的方式是,我将 maxIdle 设置为 30,这意味着
希望清理 NMEA GPS 中的 .txt 文件。我当前的代码如下。 deletes = ['$GPGGA', '$GPGSA', '$GPGSV', '$PSRF156', ] searchquer
我有一个 URL、一个用户名和一个密码。我想在 C# .Net WinForms 中建立 VPN 连接。 你能告诉我从哪里开始吗?任何第三方 API? 代码示例将受到高度赞赏... 最佳答案 您可以像
有没有更好的方法将字符串 vector 转换为字符 vector ,字符串之间的终止符为零。 因此,如果我有一个包含以下字符串的 vector "test","my","string",那么我想接收一
我正在编写一个库,它不断检查 android 设备的连接,并在设备连接、断开连接或互联网连接变慢时给出回调。 https://github.com/muddassir235/connection_ch
我的操作系统:Centos 7 + CLOUDLINUX 7.7当我尝试从服务器登录Mysql时 [root@server3 ~]# Mysql -u root -h localhost -P 330
我收到错误:Puma 发现此错误:无法打开到本地主机的 TCP 连接:9200(连接被拒绝 - 连接(2)用于“本地主机”端口 9200)(Faraday::ConnectionFailed)在我的
请给我一些解决以下错误的方法。 这是一个聊天应用....代码和错误如下:: conversations_controller.rb def create if Conversation.bet
我想将两个单元格中的数据连接到一个单元格中。我还想只组合那些具有相同 ID 的单元格。 任务 ID 名称 4355.2 参与者 4355.2 领袖 4462.1 在线 4462.1 快速 4597.1
我经常需要连接 TSQL 中的字段... 使用“+”运算符时 TSQL 强制您处理的两个问题是 Data Type Precedence和 NULL 值。 使用数据类型优先级,问题是转换错误。 1)
有没有在 iPad 或 iPhone 应用程序中使用 Facebook 连接。 这个想法是登录这个应用程序,然后能够看到我的哪些 facebook 用户也在使用该应用程序及其功能。 最佳答案 是的。
我在连接或打印字符串时遇到了一个奇怪的问题。我有一个 char * ,可以将其设置为字符串文字的几个值之一。 char *myStrLiteral = NULL; ... if(blah) myS
对于以下数据 - let $x := "Yahooooo !!!! Select one number - " let $y := 1 2 3 4 5 6 7 我想得到
我正在看 UDEMY for perl 的培训视频,但是视频不清晰,看起来有错误。 培训展示了如何使用以下示例连接 2 个字符串: #!usr/bin/perl print $str = "Hi";
我是一名优秀的程序员,十分优秀!