Available in versions: Dev (3.20) | Latest (3.19) | 3.18 | 3.17

Repeated NOT

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The NOT unary operator reverses itself, when called repeatedly, meaning that redundant NOT operators can be removed.

Using Settings.transformPatternsNotNot, the following transformations can be achieved:

-- With Settings.transformPatternsNotNot active, this:
SELECT
  NOT (NOT (x = 1)),
  NOT (NOT (NOT (x = 1)))
FROM tab;

-- ... is transformed into the equivalent expression:
SELECT
  x = 1,       -- NOT (NOT (x = 1))
  NOT (x = 1), -- NOT (NOT (NOT (x = 1)))
FROM tab;

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo