hadoop 配置单元连接表并仅保留1列

qfe3c7zg  于 2022-12-26  发布在  Hadoop
关注(0)|答案(1)|浏览(221)

我有下面的表连接,并注意到配置单元保留了pk列的两个副本-一个来自表b,一个来自表c。有没有办法只保留其中的一个列?
我总是可以用精确的select column1, column2等替换select *,但这不会太有效

  1. with a as (
  2. select
  3. *
  4. from table1 b left join table2 c
  5. on b.pk = c.pk
  6. )
  7. select
  8. *
  9. from a;
  10. ;

更新1

是否可以为许多列设置别名?例如下面的行可以工作
select b.pk as duplicate_pk
但是,是否有一种方法可以执行类似select b.* as table2的操作,在表b的所有列之前添加文本table2

xesrikrc

xesrikrc1#

不确定您是否已经尝试过此操作,但您可以使用以下任一项选择要选择的内容
B.* 仅选择表1的列
c.* 仅选择表2的列
示例:

  1. with a as (
  2. select
  3. b.*
  4. from table1 b left join table2 c
  5. on b.pk = c.pk
  6. )
  7. select
  8. *
  9. from a;

相关问题