Do Oracle SQL DBs Remove duplicate entries in a where-in clause? -


i apologize if duplicate question: i've searched finding many non-related topics/questions.

for instance

select *  table_of_things  id in (1, 2, 3, 4, 5, 6, 1, 2, 1) 

will oracle pre-processing remove duplicates before performing query? how can find out? imagine in large lists performance loss can huge , remove duplicates myself before querying if not.

like you, couldn't find specific documentation entry specifies if expression list gets simplified performance reasons. must considered implementation detail. based on observation, appear optimizer performs optimization.

on oracle 12c, ran example query yours autotrace turned on, , listed filter predicates used. expected, list of predicates simplified eliminate duplicates.

use autotrace on query if want check out yourself.