this one is a more intensive and likely less useful feature, but technically the type of an input variable can be definied as a union (e.g., :token = x OR :token = y) or an intersection (e.g., :token = x AND :token = y)
we should support both explicitly
currently, as of #49, we only support unions
but supporting intersections will allow this tool to pre-emptively warn users that the query that they have defined can not be satisfied:
- e.g., a value can not be both a string and a number at the same time
note: this is probably not as relevant in mysql, where mysql will actually typecast for you - but is relevant in postgres for sure.