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

MySQL SelectステートメントのIF()関数?


IF()関数は、条件に基づいて値を返します。

構文は次のとおりです-

SELECT IF(yourCondition, yourMessageIfConditionBecomesTrue,yourMessageIfConditionBecomesFalse) from yourTableName;
Let us first create a table:
mysql> create table DemoTable
   (
   Value int
   );
Query OK, 0 rows affected (0.60 sec)

挿入コマンド-

を使用してテーブルにレコードを挿入します
mysql> insert into DemoTable values(1000);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(2000);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(500);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values(1100);
Query OK, 1 row affected (0.16 sec)

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

mysql> select *from DemoTable;

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

+-------+
| Value |
+-------+
| 1000  |
| 2000  |
| 500   |
| 1100  |
+-------+
4 rows in set (0.00 sec)

これがMySQLにIF()を実装するためのクエリです-

mysql> select Value,IF(Value > 1000, CONCAT(Value,' is greater than 1000'),CONCAT(Value,' is lower than 1000')) AS Result from DemoTable;

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

+-------+---------------------------+
| Value | Result                    |
+-------+---------------------------+
| 1000  | 1000 is lower than 1000   |
| 2000  | 2000 is greater than 1000 |
| 500   | 500 is lower than 1000    |
| 1100  | 1100 is greater than 1000 |
+-------+---------------------------+
4 rows in set (0.00 sec)

  1. selectステートメント内のMySQLcaseステートメント?

    このために、CASEWHENステートメントを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> FirstName varchar(20),    -> Score int -> ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Jo

  2. MySQLでの更新中にselectステートメントを使用するにはどうすればよいですか?

    このために、MySQL UPDATEコマンドを使用している間、WHERE句とともにサブクエリを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Id int,    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.82 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert int