Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
None
-
None
Description
Up to 10.3.25 both
SELECT NULL IS NULL = 1;
and
SELECT (NULL IS NULL) = 1;
worked and returned the same result.
Starting with 10.3.26 only the 2nd variant with extra parenthesis still works, while the 1st variant now throws a syntax error "near '= 1'"
No related entry on the 10.3.26 release notes page refers to such changed parser behavior.
Attachments
Issue Links
- duplicates
-
MDEV-24194 View definition corruption
-
- Closed
-
Trying this on other DMBS, both variants work on latest MySQL 8, on PostgreSQL and SQLite, but only the 2nd works on Microsoft SQL server (could not check Oracle as that seems to be broken in SQLfiddle right now).
All but SQLite fail on
SELECT NULL IS (NULL = TRUE);
but that's understandable as there's no literal "IS NULL" in this case for the parser to see.