MySQL IN клаузата може да се използва вместо оператор OR с клауза Where. Може да се използва, когато клаузата where се прилага за множество стойности на една и съща колона.
За да разберете IN клауза, помислете за user_table таблица, която има следните записи:
mysql> SELECT * FROM user_table; +------+------+------------+--------------------+ | id | name | join_date | no_of_posts | +------+------+------------+--------------------+ | 1 | Jim | 2013-01-24 | 50 | | 2 | Rambo| 2013-05-27 | 20 | | 3 | Jack | 2013-05-06 | 70 | | 4 | Bill | 2013-04-06 | 20 | | 5 | Tara | 2013-06-06 | 30 | +------+------+------------+--------------------+ 5 rows in set (0.00 sec)
Да приемем, че искате да покажете записи с no_of_posts, равни на 50 и 20 и 70. Това може да стане с помощта на ИЛИ условия, както следва
mysql>SELECT * FROM user_table ->WHERE no_of_posts= 50 OR ->no_of_posts= 20 OR no_of_posts= 70; +------+------+------------+--------------------+ | id | name | work_date | no_of_posts | +------+------+------------+--------------------+ | 1 | Jim | 2013-01-24 | 50 | | 2 | Rambo| 2013-05-27 | 20 | | 3 | Jack | 2013-05-06 | 70 | | 4 | Bill | 2013-04-06 | 20 | +------+------+------------+--------------------+ 4 rows in set (0.02 sec)
Използване на IN клауза изглежда така: