sql >> Databáze >  >> RDS >> Mysql

Výukový program MySQL:Klauzule MySQL IN (základní)

Místo použití operátoru OR s klauzulí Where lze použít klauzuli MySQL IN. Může být použit, když je klauzule použita pro více hodnot stejného sloupce.

Abychom rozuměli IN klauzule, zvažte user_table tabulka, která má následující záznamy:

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)

Řekněme, že chcete zobrazit záznamy s no_of_posts rovným 50 a 20 a 70. To lze provést pomocí NEBO podmínky takto

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)

Pomocí IN klauzule to vypadá takto:

  1. Dapper.NET a uložený proc s více sadami výsledků

  2. Prahové hodnoty optimalizace – seskupování a agregace dat, část 1

  3. Jak předat pole do uložené procedury serveru SQL Server

  4. INSERT INTO...SELECT pro všechny sloupce MySQL