JOINSを使用してテーブルBに存在しないテーブルAからのMySQLSELECT?
テーブルBに存在しないテーブルAからSELECTするには、左結合を使用できます。以下は構文です-
select yourTableNameA.* from yourTableNameA left join yourTableNameB on yourTableNameA.yourColumnName = yourTableNameB.yourColumnName where yourTableNameB.yourColumnName IS NULL;
まず、テーブルを作成しましょう。以下はクエリです-
mysql> create table table_A -> ( -> Value int -> ); Query OK, 0 rows affected (1.10 sec)
以下は、挿入コマンド-
を使用してテーブルにレコードを挿入するためのクエリです。mysql> insert into table_A values(10); Query OK, 1 row affected (0.32 sec) mysql> insert into table_A values(15); Query OK, 1 row affected (0.10 sec) mysql> insert into table_A values(35); Query OK, 1 row affected (0.21 sec) mysql> insert into table_A values(45); Query OK, 1 row affected (0.13 sec)
以下は、selectステートメント-
を使用してテーブルのすべてのレコードを表示するためのクエリです。mysql> select *from table_A;
これにより、次の出力が生成されます-
+-------+ | Value | +-------+ | 10 | | 15 | | 35 | | 45 | +-------+ 4 rows in set (0.00 sec)
別のテーブルを作成しましょう。以下はクエリです-
mysql> create table table_B -> ( -> Value int -> ); Query OK, 0 rows affected (0.51 sec)
以下は、挿入コマンド-
を使用してテーブルにいくつかのレコードを挿入するためのクエリです。mysql> insert into table_B values(10); Query OK, 1 row affected (0.18 sec) mysql> insert into table_B values(20); Query OK, 1 row affected (0.12 sec) mysql> insert into table_B values(35); Query OK, 1 row affected (0.23 sec) mysql> insert into table_B values(60); Query OK, 1 row affected (0.12 sec)
以下は、selectステートメントを使用してテーブルのすべてのレコードを表示するためのクエリです-
mysql> select *from table_B;
これにより、次の出力が生成されます-
+-------+ | Value | +-------+ | 10 | | 20 | | 35 | | 60 | +-------+ 4 rows in set (0.00 sec)
以下は、LEFTJOIN-
を使用してテーブルBに存在しないテーブルAから選択するクエリです。mysql> select table_A.* -> from table_A left join table_B on table_A.Value = table_B.Value -> where table_B.Value IS NULL;
これにより、次の出力が生成されます-
+-------+ | Value | +-------+ | 15 | | 45 | +-------+ 2 rows in set (0.04 sec)
-
テーブルの個別の列から平均を選択するMySQLクエリ?
平均を取得するには、AVG()を使用し、それをDISTINCTとともに使用して、個別のレコードから計算します。まずテーブルを作成しましょう- mysql> create table DemoTable1934 ( StudentName varchar(20), StudentMarks int ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into
-
MySQLで値が存在しないテーブルから選択しますか?
このために、NOT IN()-を使用できます mysql> create table DemoTable1991 ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20) ); Query OK, 0 rows affected (0.61 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1991(StudentName) values('C