В прошлом этот запрос работал для меня на iSeries DB2.
select * from db/table where posstr(field, x'3F') > 0
Проблема в том, что вы должны быть уверены в шестнадцатеричном значении, которое вы ищете в строке.У меня была похожая ситуация, когда я был уверен, что шестнадцатеричный код для символа был x'3F, но когда я вставил в строку невидимый символ, это был фактически x'22.Возможно, вы захотите выделить персонажа, который вызывает у вас проблему, и посмотреть, какова ее ценность.
select hex(substr(field, 21,1)) from db/table where posstr(field, 'StringBeforeCharacter') > 0