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 artists (name TEXT UNIQUE, sort TEXT);

INSERT INTO artists (name, sort)
VALUES ('firstname lastname', 'lastname, firstname');

INSERT INTO artists (name, sort)
VALUES ('firstname lastname 2', NULL);

INSERT INTO artists (name, sort)
VALUES ('firstname lastname 3', 'firstname, lastname');

SELECT *
FROM artists;
name sort
firstname lastname lastname, firstname
firstname lastname 2 null
firstname lastname 3 firstname, lastname
INSERT INTO artists (name, sort)
VALUES ('firstname lastname', 'lastname, firstname')
ON CONFLICT DO UPDATE
SET sort = excluded.sort
WHERE excluded.sort IS NOT sort;

SELECT *
FROM artists;
name sort
firstname lastname lastname, firstname
firstname lastname 2 null
firstname lastname 3 firstname, lastname
INSERT INTO artists (name, sort)
VALUES ('firstname lastname 2', 'lastname, firstname')
ON CONFLICT DO UPDATE
SET sort = excluded.sort
WHERE excluded.sort IS NOT sort;

SELECT *
FROM artists;
name sort
firstname lastname lastname, firstname
firstname lastname 2 lastname, firstname
firstname lastname 3 firstname, lastname
INSERT INTO artists (name, sort)
VALUES ('firstname lastname 3', 'lastname, firstname')
ON CONFLICT DO UPDATE
SET sort = excluded.sort
WHERE excluded.sort IS NOT sort;

SELECT *
FROM artists;
name sort
firstname lastname lastname, firstname
firstname lastname 2 lastname, firstname
firstname lastname 3 lastname, firstname