在雪花中删除具有不敏感值的行
Dedup rows with insensitive values in snowflake
我想删除值不区分大小写的行。
original table:
| ID | Name |
| ---| -------------- |
| 1 | Apple |
| 2 | Banana |
| 1 | apple |
去重后的期望输出(保持小写):
| ID | Name |
| ---| -------------- |
| 2 | Banana |
| 1 | apple |
以下语句仅适用于区分大小写的匹配项。
create table DELETE2 as select distinct * from DELETE1;
drop table DELETE1;
alter table DELETE2 rename to DELETE1;
我尝试使用以下语句,但没有用。
ALTER SESSION SET QUOTED_IDENTIFIERS_IGNORE_CASE = TRUE;
谢谢!
知泽
你可以group by lower(x)
:
select id, max(name) name
from table
group by 1, lower(name)
我想删除值不区分大小写的行。
original table:
| ID | Name |
| ---| -------------- |
| 1 | Apple |
| 2 | Banana |
| 1 | apple |
去重后的期望输出(保持小写):
| ID | Name |
| ---| -------------- |
| 2 | Banana |
| 1 | apple |
以下语句仅适用于区分大小写的匹配项。
create table DELETE2 as select distinct * from DELETE1;
drop table DELETE1;
alter table DELETE2 rename to DELETE1;
我尝试使用以下语句,但没有用。
ALTER SESSION SET QUOTED_IDENTIFIERS_IGNORE_CASE = TRUE;
谢谢! 知泽
你可以group by lower(x)
:
select id, max(name) name
from table
group by 1, lower(name)