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.
select version();
version()
8.0.30
CREATE TABLE test
(
t_id INTEGER NOT NULL PRIMARY KEY,
status_to VARCHAR (50)
);
INSERT INTO test VALUES
(7, NULL), (8, 'Test_val_1'), (9, 'Test_val_2'),
(3, 'Publish'), (4, 'Action'), (5, 'Sold'), (6, 'Let'), (10, 'Draft'), (11, 'Unpublish'),
(12, 'Publish'), (13, 'Action'), (14, 'Sold'), (15, 'Let'), (26, 'Draft'), (16, 'Unpublish'),
(17, 'Publish'), (18, 'Action'), (19, 'Sold'), (20, 'Let'), (27, 'Draft'), (21, 'Unpublish'),
(22, 'Publish'), (23, 'Action'), (24, 'Sold'), (25, 'Let'), (1, 'Draft'), (2, 'Unpublish'),
(29, NULL), (30, NULL), (35, 'Test_val_1'), (31, 'Test_val_2');

Records: 31  Duplicates: 0  Warnings: 0
SELECT
t_id, status_to,
ROW_NUMBER() OVER (PARTITION BY status_to ORDER BY status_to) AS rn
FROM test
WHERE status_to IS NOT NULL
ORDER BY status_to, t_id
t_id status_to rn
4 Action 2
13 Action 4
18 Action 1
23 Action 3
1 Draft 2
10 Draft 4
26 Draft 1
27 Draft 3
6 Let 3
15 Let 2
20 Let 1
25 Let 4
3 Publish 4
12 Publish 1
17 Publish 3
22 Publish 2
5 Sold 4
14 Sold 2
19 Sold 3
24 Sold 1
8 Test_val_1 1
35 Test_val_1 2
9 Test_val_2 2
31 Test_val_2 1
2 Unpublish 4
11 Unpublish 3
16 Unpublish 1
21 Unpublish 2
SELECT COUNT(rn) OVER (PARTITION BY rn = 1) AS "Unique count"
FROM
(
SELECT
t_id, status_to,
ROW_NUMBER() OVER (PARTITION BY status_to ORDER BY status_to) AS rn
FROM test
WHERE status_to IS NOT NULL
ORDER BY status_to, t_id
) AS tab
GROUP BY status_to
ORDER BY status_to
LIMIT 1;
Unique count
7
SELECT status_to, MAX(rn)
FROM
(
SELECT
t_id, status_to,
ROW_NUMBER() OVER (PARTITION BY status_to ORDER BY status_to) AS rn
FROM test
WHERE status_to IS NOT NULL
ORDER BY status_to, t_id
) AS tab
GROUP BY status_to
ORDER BY status_to;
status_to MAX(rn)
Action 4
Draft 4
Let 4
Publish 4
Sold 4
Test_val_1 2
Test_val_2 2
Unpublish 4