http://sqlfiddle.com/#!15/3d03f/3
CREATE TABLE MojaTabela
(id int, productName varchar(7), wewId int, status varchar(55))
;
INSERT INTO MojaTabela
(id, productName, wewId, status)
VALUES
(1, 'plik1', 34, 'r'),
(2, 'plik2', 56, 'w'),
(3, 'plik3', 34, 'r'),
(4, 'plik4', 78, 'r'),
(5, 'plik5', 34, 'w'),
(6, 'plik6', 67, 'r'),
(7, 'plik7', 23, 'r'),
(8, 'plik8', 78, 'w')
;
SELECT
id,
productName,
wewId,
(CASE WHEN status = 'r' THEN 'Tylko do odczytu'
ELSE 'Do odczytu i zapisu' END) AS status
FROM
MojaTabela
Baza danych: PostgresSQL
Mam tu przykładową tabelę, w której chciałbym wykonać takie zapytanie, które zwróci mi wszystkie pliki o unikalnym 'wew_id'. W przypadku,
gdy będą dwa lub więcej plików o takim samym 'wewId' to wybierze ten o najwyższych uprawnieniach, czyli w tym przypadku , uprawnienie 'Do odczytu i zapisu' jest wyższe od 'Tylko do odczytu'.