Тебе не нужен подстановочный знак. Просто примените то же преобразование к объединенному столбцу, что и в suqbuery:
SELECT *
FROM table
WHERE REPLACE(REPLACE(`field`,'T',''),'P','') IN (
SELECT REPLACE(REPLACE(`field`,'T',''),'P','') as x
FROM table
GROUP BY x
HAVING COUNT(*) > 1
)
Обратите внимание, что если вы используете MySQL 8.0, вы также можете сделать это с помощью оконных функций, что дает более короткий запрос и может быть более эффективным:
SELECT *
FROM (
SELECT
t.*,
COUNT(*) OVER(PARTITION BY REPLACE(REPLACE(`field`,'T',''),'P','')) cnt
FROM table
) t
WHERE cnt > 1