Question: Theoretically, can you use both NOT IN and NOT EXISTS as part of the same query, perhaps in a sub query?

Answer: 
**Yes**, you can.

```
WHERE EXISTS (SELECT * FROM cities_stores
                WHERE cities_stores.store_type = stores.store_type) and stores.store_type NOT IN(...);

```
Why not..

```
CREATE TABLE Test9 (ID int)

INSERT INTO Test9 values (1), (2), (3), (4)

SELECT * 
FROM test9 
WHERE id NOT IN (1) 
 AND EXISTS (SELECT 1 FROM test9 WHERE id = 1)

```