#  IN And  EXISTS
__*IN*__
__*EXISTS*__
+ Difference between IN and EXISTS  
```10
tidb> SELECT * FROM test.t1;
+------+
| id   |
+------+
| NULL |
+------+
1 row in set (0.00 sec)
tidb> SELECT * FROM test.t1 WHERE id ~!@IN@!~ (SELECT id FROM test.t1);
Empty set (0.00 sec)
tidb> SELECT * FROM test.t1 WHERE ~!@EXISTS@!~ (SELECT id FROM test.t1);
+------+
| id   |
+------+
| NULL |
+------+
1 row in set (0.01 sec)
```

------------------------------------------------------------
IN is interested in the value of the data and EXISTS is interested in the existence of the record rather than the specific numeric value.
