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

MySQLで条件がtrueの場合、値に特殊文字を設定しますか?


条件については、IF()を使用してください。まずテーブルを作成しましょう-

mysql> create table DemoTable637
   (ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,ClientName varchar(100),ClientAge int
);
Query OK, 0 rows affected (0.82 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable637(ClientName,ClientAge) values('Chris',23);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable637(ClientName,ClientAge) values('Robert',24);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable637(ClientName,ClientAge) values('David',57);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable637(ClientName,ClientAge) values('Carol',60);
Query OK, 1 row affected (0.13 sec)

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

mysql> select *from DemoTable637;

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

+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
|        1 | Chris      |        23 |
|        2 | Robert     |        24 |
|        3 | David      |        57 |
|        4 | Carol      |        60 |
+----------+------------+-----------+
4 rows in set (0.00 sec)
>

以下は、条件が真の場合に特殊文字を設定するためのクエリです-

mysql> select if(ClientName IS NOT NULL AND ClientAge > 50,ClientName,'-------------') from DemoTable637;

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

+--------------------------------------------------------------------------+
| if(ClientName IS NOT NULL AND ClientAge > 50,ClientName,'-------------') |
+--------------------------------------------------------------------------+
| -------------                                                            |
| -------------                                                            |
| David                                                                    |
| Carol                                                                    |
+--------------------------------------------------------------------------+
4 rows in set (0.00 sec)

  1. MySQLの文字列値(文字列、数値、特殊文字)を含む列から特定のレコードをフェッチします

    このために、ORDER BY CAST()を使用できます。例を見てみましょう- mysql> create table DemoTable2006 (    UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    UserCode    varchar(20) ); Query OK, 0 rows affected (1.14 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2006(Us

  2. 列値のMySQLでENUMを設定します

    テーブルの作成中に、ENUM値が必要な列のENUMタイプを設定します。まずテーブルを作成しましょう- mysql> create table DemoTable2019    -> (    -> StudentMarks int,    -> StudentStatus ENUM('First','Second','Fail')    -> ); Query OK, 0 rows affected (1.75 sec) 挿入コマンド-