如何使用PRESTO实现"INSERT IGNORE"

How to achieve "INSERT IGNORE" using PRESTO

因此,在我的 MYSQL 中,您可以在插入时使用 INSERT IGNORE 语法,而不是在插入重复行时抛出错误,而只是忽略该行

如果可能的话,我想在使用 Hive 数据库的 Presto 中实现相同的目标吗?

我知道 hive 不是真正的关系数据库,因为 Presto 上的 INSERT 语句的文档非常基础

我只想知道是否有一个简单的解决方法,因为我能想到的就是首先使用游标执行 select 以循环遍历结果并插入

在 Hive 3 之前,没有唯一约束的概念,即使在 Hive 3 中,据我所知,约束也没有强制执行。

因此 Presto Hive 连接器不强制执行任何唯一约束,因此当您插入重复行时,您的 INSERT 查询永远不会失败。它们将仅存储为独立的数据副本。

如果要保持唯一性,这需要在应用程序级别进行外部处理。