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

MySQLのテーブルから特定の行を除外する方法をわかりやすく解説

MySQLでテーブルから特定の行を除外して取得したい場合は、比較演算子 <>(等しくない)を使用します。なお、<> の代わりに != を使っても同じ結果が得られます。

ここでは、実際にテーブルを作成し、データを挿入したうえで、特定の行を除外するSELECT文の使い方を順番に解説します。

1. テーブルの作成

まず、サンプル用のテーブルを作成します。

mysql> create table DemoTable
    -> (
    -> Id int,
    -> FirstName varchar(100)
    -> );
Query OK, 0 rows affected (0.58 sec)

2. レコードの挿入

次に、INSERTコマンドを使ってテーブルにレコードを追加します。

mysql> insert into DemoTable values(1,'John');
Query OK, 1 row affected (0.12 sec)

mysql> insert into DemoTable values(2,'Chris');
Query OK, 1 row affected (0.15 sec)

mysql> insert into DemoTable values(3,'Robert');
Query OK, 1 row affected (0.26 sec)

mysql> insert into DemoTable values(4,'David');
Query OK, 1 row affected (0.13 sec)

3. 全レコードの確認

SELECT文を実行して、テーブル内のすべてのレコードを表示してみましょう。

mysql> select *from DemoTable;

出力結果

+------+-----------+
| Id   | FirstName |
+------+-----------+
|    1 | John      |
|    2 | Chris     |
|    3 | Robert    |
|    4 | David     |
+------+-----------+
4 rows in set (0.00 sec)

4. 特定の行を除外するクエリ

ここからが本題です。WHERE句と <> を組み合わせることで、指定した値に一致しない行だけを取得できます。以下の例では、Id が 2 の行(Chris)を除外しています。

mysql> select Id,FirstName from DemoTable where Id <> 2;

出力結果

+------+-----------+
| Id   | FirstName |
+------+-----------+
|    1 | John      |
|    3 | Robert    |
|    4 | David     |
+------+-----------+
3 rows in set (0.00 sec)

このように、Id が 2 の「Chris」の行だけが除外され、残りの3件が表示されました。文字列のカラムに対しても使用できるため、たとえば where FirstName <> 'John' のように書けば、名前が「John」以外の行を取得することも可能です。

  1. MySQLでデータベース内のテーブル名一覧を取得する方法

    MySQLでデータベースに存在するテーブル名の一覧を取得したい場合は、SHOW TABLESステートメントを使用します。SQLクライアントやコマンドラインから手軽に実行でき、指定したデータベース内の全テーブルを簡単に確認できます。基本構文テーブル名を取得するための基本構文は以下のとおりです。show tables from yourDatabaseName;yourDatabaseName の部分に、対象となるデータベース名を指定してください。実行例それでは、サンプルデータベース「hb_student_tracker」に対して実際にクエリを実行し、テーブル名を取得してみましょう。mysql&g

  2. MySQLでテーブルから特定の行を抽出するクエリの書き方

    MySQLでは、WHERE句とORDER BY、LIMITを組み合わせることで、テーブルから条件に合致する特定の行だけを効率的に取得できます。本記事では、実際にサンプルテーブルを作成し、特定の行を抽出するクエリの実行手順をわかりやすく解説します。 1. サンプルテーブルの作成 まず、CREATE TABLE文を使ってサンプル用のテーブルを作成します。ここでは「Section(組)」と「StudentName(生徒名)」という2つのカラムを持つテーブルを用意しました。 mysql> create table DemoTable1972 ( Section char(1),