- 
                Notifications
    You must be signed in to change notification settings 
- Fork 24
Open
Description
It is unclear whether the LIKE operator is supported in the Oracle NoSQL Database. I attempted to execute a query that appeared to follow the correct syntax but encountered an error message suggesting otherwise.
Example Query
SELECT * FROM jakartanosqltck 
WHERE jakartanosqltck.entity = 'Animal' 
  AND jakartanosqltck.content.name LIKE ?Error Message
The query fails with the following error:
java.lang.IllegalArgumentException: PREPARE: Illegal Argument: Table, index and unquoted field names may contain only alphanumeric values plus the character "_". Error: at (1, 104) mismatched input 'LIKE' expecting {<EOF>, AND, GROUP, IS, LIMIT, OFFSET, OR, ORDER, '[', '*', '.', '<', '<=', '>', '>=', '=', '!=', LT_ANY, LTE_ANY, GT_ANY, GTE_ANY, EQ_ANY, NEQ_ANY, '+', '-', '/', RDIV, '||'}, at line 1:104
rule stack: [parse]
Observations
- The error suggests that LIKEis not recognized by the query parser.
- The query follows the expected SQL syntax for LIKEand uses a placeholder (?) for parameter binding.
- There is no clear indication in the error message whether the issue lies with the LIKEoperator itself or some other part of the query.
Request for Clarification
- Does Oracle NoSQL Database support the LIKEoperator for string pattern matching?
- If not, what is the recommended approach for performing pattern matching in queries? For example, should REGEXP_LIKEbe used instead?
- If LIKEis supported, is there a specific syntax requirement or limitation that needs to be addressed?
Suggested Improvement
If LIKE is unsupported, it would be helpful for the error message to state this, such as: explicitly
The 'LIKE' operator is not supported in Oracle NoSQL Database. Consider using 'REGEXP_LIKE' for pattern matching.
PS: At the documentation I only find the regular expression: https://docs.oracle.com/en/database/other-databases/nosql-database/24.4/nsdev/regular-expression-conditions.html
Metadata
Metadata
Assignees
Labels
No labels