An IN predicate compares a value with another value or a collection of values. in-predicate = --> value-expr +--------+-> IN +-> value-expr ------------------+-> +-> NOT -+ +-> ( -++-> value-expr --++-> ) + |+-> select-expr --+| +---------- , <-----+ All forms of the IN predicates can be represented using other conditional operators. o value-expr IN value-expr is the same as value-expr IN (value-expr) which is the same as the basic predicate value-expr = value-expr (as long as the value expression on the right is not a host structure that expands to more than one parameter) o value-expr IN (value-expr1, value-expr2, value-expr3) is the same as the complex predicate value-expr = value-expr1 OR value-expr = value-expr2 OR value-expr = value-expr3 (in this case, any of the value expressions on the right can be a host structure that expands to more than one parameter) o value-expr IN (col-select-expr1, val-expr2, col-select-expr3) is the same as the quantified predicate value-expr = ANY (col-select-expr1) OR value-expr = val-expr2 OR value-expr = ANY (col-select-expr3) (in this case, any of the value expressions on the right can be a host structure that expands to more than one parameter)