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

単一のMySQLクエリを使用して、条件付きのレコードに異なるIDを設定します


条件については、MySQLのCASEステートメントを使用してください。まずテーブルを作成しましょう-

mysql> create table DemoTable1545
   -> (
   -> Id int,
   -> FirstName varchar(20)
   -> );
Query OK, 0 rows affected (1.65 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1545 values(1,'John');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1545 values(2,'Chris');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable1545 values(3,'Bob');
Query OK, 1 row affected (0.15 sec)

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

mysql> select * from DemoTable1545;

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

+------+-----------+
| Id   | FirstName |
+------+-----------+
|    1 | John      |
|    2 | Chris     |
|    3 | Bob       |
+------+-----------+
3 rows in set (0.00 sec)

これは、CASEステートメントを使用してさまざまなIDを設定するためのクエリです-

mysql> update DemoTable1545
   -> set Id=
   -> case when FirstName like '%John%' then 101
   -> when FirstName like '%Chris%' then 201
   -> when FirstName like '%Bob%' then 501
   -> else Id
   -> end;
Query OK, 3 rows affected (0.18 sec)
Rows matched: 3  Changed: 3 Warnings: 0

テーブルレコードをもう一度確認しましょう-

mysql> select * from DemoTable1545;

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

+------+-----------+
| Id   | FirstName |
+------+-----------+
|  101 | John      |
|  201 | Chris     |
|  501 | Bob       |
+------+-----------+
3 rows in set (0.00 sec)

  1. AND&OR演算子を使用した単一のMySQLクエリを使用して特定のレコードをフェッチします

    まずテーブルを作成しましょう- mysql> create table DemoTable2015    -> (    -> StudentId int,    -> StudentName varchar(20),    -> StudentCountryName varchar(20) -> ); Query OK, 0 rows affected (1.20 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> inse

  2. 単一のMySQLクエリのすべての列名に「エイリアス」を設定します

    列名のエイリアスを設定するための構文は次のとおりです- select yourColumnName1 anyAliasName1,yourColumnName2 anyAliasName2 from yourTableName anyAliasName; 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable2014    -> (    -> FirstName varchar(20),    -> LastName varchar(20)