SOQL Query Where Id "In" Versus "Equals"(=)
I've not seen a difference functionally; I strongly prefer using IN as that is what would be required in SQL, and it it more accurate, and more descriptive.
First_Name__c is not logically equal to a list.
Using the syntax First_Name___c IN :names
makes it clear that names is a collection, and that the developer knows that it's a collection
They are functionally equivalent. I agree with Mike that IN
is more syntactically clear, but either one works.
See also: How to find out if an Object is a collection or single value?
This equivalence can be quite useful when building dynamic SOQL.