В настоящее время я работаю с некоторым из старого кода Postgres SQL моего учителя и модифицирую его так, чтобы он соответствовал тому, что мне нужно.Тем не менее, есть один кусок кода, который я не могу найти объяснение где-либо в Интернете.В коде у него была инструкция case с ~~ *, использованным как сравнение.Я не знаком с этим синтаксисом и буду очень признателен за любую помощь.Заранее спасибо.
CASE
WHEN sessions.status ~~* 'data%finder%'::text THEN ((sessions.minutes_in_data_ || ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'text%edit%'::text THEN ((sessions.minutes_in_text_editor || ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'admin%module%'::text AND sessions.minutes_in_module<> 0 THEN ((sessions.minutes_in_module|| ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'client%module%'::text AND sessions.minutes_in_module<> 0 THEN ((sessions.minutes_in_module|| ' ('::text) || sessions.minutes_in_idle) || ')'::text
ELSE NULL::text
END AS "Duration (Idle)",