By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE test ( id INT NOT NULL PRIMARY KEY,
column_1 varchar(255),
column_2 varchar(255) );
INSERT INTO test VALUES
(13,'logo-1',NULL),
(14,'logo-2',NULL),
(15,NULL ,'ulitsa-1'),
(16,NULL ,NULL),
(17,NULL ,NULL),
(18,'logo-3',NULL),
(19,'logo-4',NULL),
(23,NULL ,'ulitsa-2');
SELECT * FROM test;
id | column_1 | column_2 |
---|---|---|
13 | logo-1 | null |
14 | logo-2 | null |
15 | null | ulitsa-1 |
16 | null | null |
17 | null | null |
18 | logo-3 | null |
19 | logo-4 | null |
23 | null | ulitsa-2 |
SELECT DISTINCT
FIRST_VALUE(column_1) OVER (ORDER BY column_1 IS NULL, id DESC) column_1,
FIRST_VALUE(column_2) OVER (ORDER BY column_2 IS NULL, id DESC) column_2
FROM test;
column_1 | column_2 |
---|---|
logo-4 | ulitsa-2 |
UPDATE test
SET column_1 = COALESCE(column_1, ' '),
column_2 = COALESCE(column_2, ' ');
SELECT * FROM test;
id | column_1 | column_2 |
---|---|---|
13 | logo-1 | |
14 | logo-2 | |
15 | ulitsa-1 | |
16 | ||
17 | ||
18 | logo-3 | |
19 | logo-4 | |
23 | ulitsa-2 |
SELECT DISTINCT
FIRST_VALUE(column_1) OVER (ORDER BY column_1 = ' ', id DESC) column_1,
FIRST_VALUE(column_2) OVER (ORDER BY column_2 = ' ', id DESC) column_2
FROM test;
column_1 | column_2 |
---|---|
logo-4 | ulitsa-2 |