zoukankan      html  css  js  c++  java
  • 大数据学习——hive的sql练习题

    ABC三个hive表 每个表中都只有一列int类型且列名相同,求三个表中互不重复的数

    create table a(age int) 
    row format delimited
    fields terminated by ',';
    
    create table b(age int) 
    row format delimited
    fields terminated by ',';
    
    create table c(age int) 
    row format delimited
    fields terminated by ',';
    
    a.txt
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    b.txt
    2
    3
    11
    12
    14
    15
    16
    18
    35
    6
    7
    8
    
    c.txt
    1
    2
    3
    11
    5
    6
    7
    8
    20
    30
    40

    sql:

    select * from (select a.* from a full outer join b  on a.age=b.age full outer join c on a.age =c.age where  (a.age is not null and b.age is null and c.age is null) or  (b.age is not null and a.age is null and c.age is null) or (c.age is not null and a.age is null and b.age is null) union select b.* from b full outer join a  on a.age=b.age full outer join c on b.age =c.age where (a.age is not null and b.age is null and c.age is null) or  (b.age is not null and a.age is null and c.age is null) or (c.age is not null and a.age is null and b.age is null) union select c.* from c full outer join b  on c.age=b.age full outer join a on a.age =c.age where (a.age is not null and b.age is null and c.age is null) or  (b.age is not null and a.age is null and c.age is null) or (c.age is not null and a.age is null and b.age is null)) d where d.age is not null ;

    运行结果:

    sql:

    select age,count(age) as c1 from (select age from a union all select age from b union all select age from c) t_union group by age having c1=1;

  • 相关阅读:
    [翻译]使用设计模式简化.NET中菜单和Form元素之间的关系
    [AWDwR4]13章出错 protect_against_forgery
    使用存储过程(22)
    建立数据库连接(19)
    对数据库添加数据(21)
    ADO.NET常用对象(18)
    数据展现Repeater控件(25)
    content控件(24)
    对数据库增加数据(21)
    行为存储过程(23)
  • 原文地址:https://www.cnblogs.com/feifeicui/p/10389302.html
Copyright © 2011-2022 走看看