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

MySQLの2つの選択の違いは?


MySQLの2つのselectの違いにサブクエリを使用できます。構文は次のとおりです。

SELECT *FROM yourTableName where yourColumnName NOT IN(SELECT yourColumnName FROM youTableName WHERE yourCondition;

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。

mysql> create table DifferenceSelectDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> UserId int,
   -> UserValue int,
  -> PRIMARY KEY(Id)
   ->  );
Query OK, 0 rows affected (0.87 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです。

mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(10,10);
Query OK, 1 row affected (0.24 sec)
mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(10,20);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(20,30);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(20,20);
Query OK, 1 row affected (0.19 sec)
mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(30,40);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DifferenceSelectDemo(UserId,UserValue) values(30,20);
Query OK, 1 row affected (0.15 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです。

mysql> select *from DifferenceSelectDemo;

出力は次のとおりです。

+----+--------+-----------+
| Id | UserId | UserValue |
+----+--------+-----------+
|  1 |     10 |        10 |
|  2 |     10 |        20 |
|  3 |     20 |        30 |
|  4 |     20 |        20 |
|  5 |     30 |        40 |
|  6 |     30 |        20 |
+----+--------+-----------+
6 rows in set (0.02 sec)

2つの選択の違いを取得するためのクエリは次のとおりです。

mysql> select *from DifferenceSelectDemo
   -> WHERE UserValue NOT IN (select UserValue from DifferenceSelectDemo where Id=1);

出力は次のとおりです。

+----+--------+-----------+
| Id | UserId | UserValue |
+----+--------+-----------+
|  2 |     10 |        20 |
|  3 |     20 |        30 |
|  4 |     20 |        20 |
|  5 |     30 |        40 |
|  6 |     30 |        20 |
+----+--------+-----------+
5 rows in set (0.09 sec)

  1. MySQLで2つの日時値の違いを見つけますか?

    2つの日時値の違いを見つけるには、TIMESTAMPDIFF()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> DueDatetime1 datetime,    -> DueDatetime2 datetime    -> ); Query OK, 0 rows affected (0.86 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> ins

  2. 2つのDateTime間のミリ秒単位のC#の差

    以下が私たちの日付の2つのDateTimeオブジェクトであるとしましょう。 DateTime date1 = new DateTime(2018, 8, 11, 08, 15, 20); DateTime date2 = new DateTime(2018, 8, 11, 11, 14, 25); TimeSpanを使用して、これら両方の日付の違いを見つけます。 TimeSpan ts = date2 - date1; ミリ秒を取得するには、次のプロパティを使用します- ts.TotalMilliseconds 完全なコードを見てみましょう。 例 using System; using