Имеется таблица:
create table t (
"path" text primary key,
...
);
Безо всяких там переопределённых collation, дефолтное collation базы – en_US.utf8, connection charset – тоже UTF8.
В таблице этой есть строка со значением path = '/private/auto_test_intern/U3.json'
(зуб даю, значение именно такое: 33 байта, все символы – в обычном ASCII).
Делаем:
-- отдаёт 1 строку; length = 33:
select length("path"::bytea), * from t where "path" like '/private/auto_test_intern/U3.json';
-- 0 строк:
select * from t where "path" = '/private/auto_test_intern/U3.json';
-- 1 строка:
select * from t where "path" like '/private/auto_test_intern/U3.json' and substr("path", 1, 33) = '/private/auto_test_intern/U3.json';
Вопрос: ЧЗНх во втором запросе?!