比较 sql Hive 中三列的最佳方法
Best way to compare three columns in sql Hive
我需要在 Hive SQL 中通过包含字符串日期 'yyyy-mm-dd' 的 3 列进行一些比较。请考虑 table 有超过 200 万条记录。
考虑来自 table T1 的三列 (col1; col2; col3),我必须保证:
- col1 = col2,两者,或至少有一个与 col3 不同。
谨致问候,
逻辑上你有问题。
col1 = col2
因此如果 col1 != col3 那么 col2 != col3;
这里真的够用了:
select * from T1 where col1 = col2 and col1 != col3;
做这个地图侧是合适的,所以使用 where
标准可能就足够了。
如果您想说 3 个中的 2 个需要匹配,您可以使用 group by
和 having
来减少比较。
我需要在 Hive SQL 中通过包含字符串日期 'yyyy-mm-dd' 的 3 列进行一些比较。请考虑 table 有超过 200 万条记录。
考虑来自 table T1 的三列 (col1; col2; col3),我必须保证:
- col1 = col2,两者,或至少有一个与 col3 不同。
谨致问候,
逻辑上你有问题。
col1 = col2
因此如果 col1 != col3 那么 col2 != col3;
这里真的够用了:
select * from T1 where col1 = col2 and col1 != col3;
做这个地图侧是合适的,所以使用 where
标准可能就足够了。
如果您想说 3 个中的 2 个需要匹配,您可以使用 group by
和 having
来减少比较。