sql - SQL左连接仅在我指定右表的列时才有效(Redshift)
问题描述
我有两个表,table1(左表)有 33k 行,table2 有超过 33k 行。所以当我做左连接时,查询应该返回 33k 行,对吧?
当我从 table2 指定列时,查询按预期返回 33k 行。(查询一)
但是当我从 table2 中选择所有列时,查询只返回 26k 行。(查询 2)
(起初我认为这个差异是 table2 中 NULL 值的 bc,但我检查了结果查询也有 NULL 值。)
查询 1(按预期返回 33k 行):
SELECT A.id, A.col2, A.col3, B.ids, B.column1, B.column2,
FROM table1 AS A
LEFT JOIN table2 AS B
ON A.id = B.ids
查询 2(仅返回 26k 行):
SELECT A.*, B.*
FROM table1 AS A
LEFT JOIN table2 AS B
ON A.id = B.ids
(红移 | PostgreSQL)
解决方案
推荐阅读
- python - 使用 Microsoft Power Apps 运行 Python 程序的最佳方法
- java - hazelcast 错误“找不到事务日志”
- ruby-on-rails - 如何始终在 Rails 应用程序中保存嵌套项(即使它们没有被更改)?
- c++ - 正确使用 _tcstod 并将 lpszEndChar 设置为 NULL 与否
- python - 现有系统 Python 的问题并为新 Python 安装 Anaconda - 编程新手
- google-docs-api - 有什么方法可以在谷歌文档中创建自定义元素,例如 OLE/OpenDoc 或 mediawiki?
- regex - 如何拆分第一次出现的字符
- html - 向此 HTML 添加字体大小
- python - 从不同大小的数据框中删除循环中的列
- python - 如何在plotly python中编辑x轴刻度