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

MySQLでセット配列にないすべてのレコードを見つける方法は?


このために、NOT IN()関数を使用できます。

まずテーブルを作成しましょう-

mysql> create table DemoTable718 (
   Id int,
   FirstName varchar(100),
   Age int
);
Query OK, 0 rows affected (0.59 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable718 values(101,'Chris',26);
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable718 values(102,'Robert',24);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable718 values(103,'David',27);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable718 values(104,'Mike',28);
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable718 values(105,'Sam',23);
Query OK, 1 row affected (0.14 sec)

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

mysql> select *from DemoTable718;

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

+------+-----------+------+
| Id   | FirstName | Age  |
+------+-----------+------+
| 101  | Chris     | 26   |
| 102  | Robert    | 24   |
| 103  | David     | 27   |
| 104  | Mike      | 28   |
| 105  | Sam       | 23   |
+------+-----------+------+
5 rows in set (0.00 sec)

セット配列にないすべてのレコードを検索するためのクエリは次のとおりです-

mysql> select *from DemoTable718 where Id NOT IN('101','103','104');

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

+------+-----------+------+
| Id   | FirstName | Age  |
+------+-----------+------+
| 102  | Robert    | 24   |
| 105  | Sam       | 23   |
+------+-----------+------+
2 rows in set (0.00 sec)

  1. MySQLを使用して一連の列でnull値を持つレコードを検索する方法

    これには、GREATEST()の概念を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1862      (      Value1 int,      Value2 int,      Value3 int,      Value4 int      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して

  2. MySQLで日付レコードを持つテーブルの日付を変更するにはどうすればよいですか?

    日付を変更して年を追加する必要があるとします。このためには、DATE_ADD()とともにUPDATEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1984    (    ShippingDate date    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1984 values('2014