【发布时间】:2021-12-18 19:11:36
【问题描述】:
我有一个表,其中包含每个用户的两种不同状态,“已声明”和“已退回”。我想比较 'returned' 状态的 'status_datetime_update' 日期,并检查它是否大于或小于先前状态('claimed')的 expiration_datetime。
我知道 transaction_id 1111 和 1244 小于并且 transaction_id 3312 大于。
有什么办法可以做到吗?
create or replace table TBL_A (
user_name varchar, country varchar, status varchar, transaction_id varchar, status_datetime_update date, expiration_datetime date
);
insert into TBL_A values
('Rachel', 'USA', 'CLAIMED','1111', '2021-10-10', '2021-10-15'),
('Rachel', 'USA', 'RETURNED','1111', '2021-10-14','2021-10-15'),
('Ross', 'PAN', 'CLAIMED','3312','2021-10-12','2021-10-20'),
('Ross', 'PAN', 'RETURNED','3312', '2021-10-25','2021-10-20'),
('Chandler', 'UK', 'CLAIMED','1244','2021-09-11','2021-09-14'),
('Chandler', 'UK', 'RETURNED', '1244','2021-09-12','2021-09-14');
【问题讨论】:
标签: sql snowflake-cloud-data-platform snowflake-schema