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

MySQL INSTR()関数をWHERE句で使用するにはどうすればよいですか?


MySQL WHERE句でINSTR()関数を使用する場合、比較演算子とともに、テーブルの列名を最初の引数として、部分文字列を2番目の引数として指定する必要があります。以下は、「Student」テーブルを使用してそれを示す例です-

「Student」テーブルに次の値があるとします-

mysql> Select * from Student;
+------+---------+---------+-----------+
| Id   | Name    | Address | Subject   |
+------+---------+---------+-----------+
| 1    | Gaurav  | Delhi   | Computers |
| 2    | Aarav   | Mumbai  | History   |
| 15   | Harshit | Delhi   | Commerce  |
| 20   | Gaurav  | Jaipur  | Computers |
| 21   | Yashraj | NULL    | Math      |
+------+---------+---------+-----------+

5 rows in set (0.02 sec)

次に、次のクエリは、WHERE caluse-

でINSTR()関数を使用する方法を示しています。
mysql> select name, INSTR(Name,'av')As Result from student where INSTR(Name,'av') > 0;

+--------+--------+
| name   | Result |
+--------+--------+
| Gaurav |      5 |
| Aarav  |      4 |
| Gaurav |      5 |
+--------+--------+

3 rows in set (0.00 sec)

mysql> select name, INSTR(Name,'av')As Result from student where INSTR(Name,'av') = 0 ;

+---------+--------+
| name    | Result |
+---------+--------+
| Harshit |      0 |
| Yashraj |      0 |
+---------+--------+

2 rows in set (0.01 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. WHERE句でMySQLVIEWを使用するにはどうすればよいですか?

    WHERE句を使用したMySQLVIEWの場合、構文は次のとおりです- select * from yourViewName where yourColumnName='yourValue'; まず、-を作成しましょう mysql> create table DemoTable1432    -> (    -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> StudentName varchar(20),   &n