Oracle
 sql >> Base de données >  >> RDS >> Oracle

Oracle SQL :Récupérer des valeurs inexistantes à partir de la clause IN

Un bon moyen de générer de fausses lignes consiste à utiliser une collection standard telle que 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