MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL WHERE句でループを使用して代替IDレコードのみを表示するなど、同様の結果を得るにはどうすればよいですか?


MySQL IN()を使用して同様の結果を取得します。まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   ClientId int,
   ClientName varchar(100),
   ClientAge int
);
Query OK, 0 rows affected (0.70 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values(100,'Chris',34);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values(101,'Robert',31);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values(103,'David',33);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values(104,'Mike',45);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values(105,'Sam',39);
Query OK, 1 row affected (0.09 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
|      100 | Chris      |        34 |
|      101 | Robert     |        31 |
|      103 | David      |        33 |
|      104 | Mike       |        45 |
|      105 | Sam        |        39 |
+----------+------------+-----------+
5 rows in set (0.00 sec)
>

以下は、MySQL IN()を使用したループのような同様の結果を取得するためのクエリです-

mysql> select ClientId,ClientName,ClientAge from DemoTable
where ClientId IN(101,103,105);

これにより、次の出力が生成されます-

+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
|      101 | Robert     |        31 |
|      103 | David      |        33 |
|      105 | Sam        |        39 |
+----------+------------+-----------+
3 rows in set (0.00 sec)
>
  1. MySQL WHERE句でSUM()関数の結果を使用できますか?

    MySQLのWHEREではなくHAVING句を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable (    Name varchar(50),    Price int ); Query OK, 0 rows affected (0.79 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Chris',30); Query OK, 1 row affected (0.15

  2. MySQLで単一のWHERE句を使用して複数の行を更新するにはどうすればよいですか?

    このために、MySQL IN()を使用できます。まず、-を作成しましょう mysql> create table DemoTable1420    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> FirstName varchar(20),    -> LastName varchar(20),    -> Age int    -> ); Query OK,