栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

delete 的用法(Hive)(SQL)

delete 的用法(Hive)(SQL)

此题需要注意的是题目要求是删除,故而不能使用group by,来查询

解法如下,采用窗口函数

delete from Person
where Id 
in
    (
    select
    t1.Id
    from(
        select
        Id,Email,
        row_number()over(partition by Email order by Id) rn
        from Person
        ) t1
    where t1.rn>1
    );

不采用窗口函数的解法

首先查询出要删除的数据
SELECt p1.*
FROM Person p1,
    Person p2
WHERe
    p1.Email = p2.Email AND p1.Id > p2.Id
;
然后删掉
DELETe p1.* FROM Person p1,
    Person p2
WHERe
    p1.Email = p2.Email AND p1.Id > p2.Id
;
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/317087.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号