sql >> Base de Datos >  >> RDS >> Oracle

Oracle SQL:recuperación de valores no existentes de la cláusula IN

Una buena manera de generar filas falsas es con una colección estándar como sys.odcivarchar2list :

select
    tables_to_check.table_name,
    case when user_tables.table_name is null then 'No' else 'Yes'end table_exists
from
(
    select column_value table_name
    from table(sys.odcivarchar2list('does not exist', 'TEST1'))
) tables_to_check
left join user_tables
    on tables_to_check.table_name = user_tables.table_name
order by tables_to_check.table_name;


TABLE_NAME       TABLE_EXISTS
----------       ------------
TEST1            Yes
does not exist   No