SQLITE中意外的LEFT OUTER JOIN行为

塔努恩帕夏

我在SQLITE中有两个表

“端口”是

ticker  weight
abc     1
bcd     2
cde     3

“ bench2”是

ticker  weight
abc     3
bcd     2
cde     1

我试图学习如何在SQLITE中使用外部联接。从LEFT OUTER JOIN开始,如下所示

SELECT * FROM port LEFT OUTER JOIN bench2 ON port.ticker = bench2.ticker;

我得到结果

ticker  weight  ticker  weight
abc      3      NULL    NULL
bcd      2      bcd     2

当我期望看到

ticker  weight weight
abc       1       3
bcd       2       2
cde       3       1

我做错了什么,如何得到想要的结果?

如果可能的话,第二个问题-我怎么能再得到一行

ticker  weight weight
abc       1       3
bcd       2       2
cde       3       1
def       NULL    3

在结果表中,如果“ bench2”有多余的一行,

ticker  weight
abc     3
bcd     2
cde     1
def     3

同时port保持不变。

约翰·布林格

对结果进行逆向工程使我得出结论,即您的数据与您所说的不同。您似乎有:

港口:

ticker  weight
abc     3
bcd     2
... (no other rows)

Bench2:

ticker  weight
bcd     2
... maybe other rows, but none having ticker = 'abc'

对于列,当您执行除a以外的任何连接时NATURAL JOIN,每个连接表中的每一列都有一个结果列,包括当具有相同名称的列时,并且包括出现在连接条件中的列。您可以限制哪些列显示在最终查询结果中,和/或可以通过在选择列表中指定所需的别名来为它们分配首选别名。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

需要了解 SQL SELECT 中特定的 LEFT OUTER JOIN 行为

来自分类Dev

grails hql left outer join

来自分类Dev

MySQL "Left Outer Join" Issue

来自分类Dev

如何编写RIGHT OUTER JOIN和LEFT OUTER JOIN的组合

来自分类Dev

SQL JOIN和LEFT OUTER JOIN

来自分类Dev

Mysql的INNER JOIN后LEFT OUTER JOIN

来自分类Dev

返回LEFT OUTER JOIN的相反结果

来自分类Dev

LEFT OUTER JOIN仅最新记录

来自分类Dev

使用WHERE子句的SQL LEFT OUTER JOIN

来自分类Dev

MySQL LEFT OUTER JOIN不过滤记录

来自分类Dev

使用子查询语法的LEFT OUTER JOIN

来自分类Dev

Select query with left outer join and sum with group by

来自分类Dev

SQL COUNT()函数和LEFT OUTER JOIN

来自分类Dev

在PostgreSQL中使用LEFT OUTER JOIN删除

来自分类Dev

MySQL LEFT OUTER JOIN不过滤记录

来自分类Dev

LEFT OUTER JOIN返回特定数据

来自分类Dev

使用LEFT OUTER JOIN建立查询结果

来自分类Dev

Mysql Left OUTER JOIN与子查询(wordpress)

来自分类Dev

LEFT OUTER JOIN不返回NULL值

来自分类Dev

LEFT OUTER JOIN的语法错误

来自分类Dev

T-SQL JOIN的默认默认行为是INNER或OUTER?

来自分类Dev

Yii:优化LEFT OUTER JOIN到INNER JOIN

来自分类Dev

如何在Django 1.9中表达sqlite LEFT OUTER JOIN?

来自分类Dev

意外的string.join()行为

来自分类Dev

为什么LEFT OUTER JOIN无法正常工作?

来自分类Dev

通过MAX挑战LEFT OUTER JOIN查询分组

来自分类Dev

具有多个值的数组列上的LEFT OUTER JOIN

来自分类Dev

LEFT OUTER JOIN获取max()并包含NULL值

来自分类Dev

需要帮助修复此LEFT OUTER JOIN的语法