【问题标题】:Does Redshift perform a merge join when two tables have the same dist and sort keys, but the column names are different?当两个表具有相同的 dist 和 sort 键,但列名不同时,Redshift 是否执行合并连接?
【发布时间】:2016-07-22 00:17:39
【问题描述】:

我有几个表具有相同的 DIST 和 SORT 键,但具有许多不同的列名。当 Redshift 连接表时,我是否仍会从合并连接中受益,还是取决于那些具有完全相同名称的列?

例如,假设我有表aDISTKEYSORTKEYuser_id;和bDISTKEYSORTKEYdistinct_id,其中distinct_iduser_id 是相同的数据,它们只是名称不同。

SELECT a.user_id, a.col1, b.col2
FROM a JOIN b ON (a.user_id = b.distinct_id);

这会导致合并连接吗?

【问题讨论】:

    标签: sql amazon-redshift


    【解决方案1】:

    是的!只要两个表中的数据都经过排序。
    您可以使用“Explain 'Your Query'”来检查查询是执行Hash join还是Merge join。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-18
      • 1970-01-01
      相关资源
      最近更新 更多