Datacom Dataquery SQL DQ093E - BAD SYNTAX on WHERE
search cancel

Datacom Dataquery SQL DQ093E - BAD SYNTAX on WHERE

book

Article ID: 398651

calendar_today

Updated On:

Products

Datacom

Issue/Introduction

Trying to find all Datacom data set names from Dynamic System Table ( DBID 1000) DIR_DATASET with an area name that is not for an index and not for the system directory file CXX by running below query   

SELECT DATASET_NAME
  FROM SYSADM.DIR_DATASET
    WHERE AREA_NAME ¬= ('IXX' OR 'CXX')

fails during execution in Dataquery SQL mode with  

DQ093E - BAD SYNTAX: <WHERE AREA_NAME ^= ('IXX' OR >

Cause

Invalid SQL syntax in the SQL WHERE clause per SQL ANSI rules

Resolution

Code the query as 

SELECT DATASET_NAME
    FROM SYSADM.DIR_DATASET
     WHERE ( AREA_NAME ¬= 'IXX' AND AREA_NAME ¬= 'CXX')

or better as 

SELECT DATASET_NAME
    FROM SYSADM.DIR_DATASET
     WHERE AREA_NAME NOT IN ( 'IXX' , 'CXX' )

Additional Information

For documentation , see SQL Search Conditions and IN Predicate