Tester la non-correspondance comme celle-ci peut devenir compliqué, je vous recommande donc de tester une correspondance et d'annuler le résultat.
Ne commence pas par abc :
WHERE NOT REGEXP_LIKE(myString, '^abc')
Ne se termine pas par abc :
WHERE NOT REGEXP_LIKE(myString, 'abc$')
Quant à savoir pourquoi cela ne fonctionne pas, comme le dit @DavidKnipe dans sa réponse :c'est parce que vous utilisez des classes de caractères. L'expression régulière ^[^(abc)] analyse comme ceci :
- Le premier
^dit "ancrer au début de la chaîne" - Le
[^(abc)]est une classe de caractères qui dit "correspond à n'importe quel simple caractère tant qu'il n'est pas(ouaouboucou)".