Vous pouvez utiliser un NOT EXISTS
avec un VALUES
construire pour tous vos préfixes.
Quelque chose comme ça :
SELECT *
FROM mytable mt
WHERE NOT EXISTS (SELECT 1
FROM (VALUES('30%'),('50%'),('1X%'),('2X%')/*,...*/)V(expr)
WHERE mt.id LIKE V.expr);