add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
create table users (
user_id int,
subscription_date date,
service varchar(10));

insert into users values
(001,'2024-01-01','basic'),
(002,'2024-01-01','plus'),
(002,'2023-01-01','plus'),
(003,'2024-01-01','premium'),
(003,'2024-01-01','premium');
Records: 5  Duplicates: 0  Warnings: 0
select * from users;
user_id subscription_date service
1 2024-01-01 basic
2 2024-01-01 plus
2 2023-01-01 plus
3 2024-01-01 premium
3 2024-01-01 premium
select user_id,
subscription_date,
service
from (
select *,
count(*) over (partition by user_id,subscription_date,service order by user_id asc ) as cnt
from users
) sub
where cnt > 1;
user_id subscription_date service
3 2024-01-01 premium
3 2024-01-01 premium
select user_id,service,subscription_date
from users
group by user_id,service,subscription_date
having count(*) > 1;
user_id service subscription_date
3 premium 2024-01-01