ホームページ > データベース > mysql チュートリアル > mysqlクエリテーブルのフィールド

mysqlクエリテーブルのフィールド

WBOY
リリース: 2023-05-13 18:42:37
オリジナル
4662 人が閲覧しました

MySQL は、データベースのクエリと操作のためのさまざまな方法をサポートする、広く使用されているリレーショナル データベース管理システムです。 MySQL では、テーブルに格納されているデータの構造と特性を理解するために、テーブルのフィールドをクエリする必要があることがよくあります。この記事では、MySQL でテーブルのフィールドをクエリする方法を紹介します。

テーブル構造のクエリ

テーブル構造をクエリするには、SHOW ステートメントを使用できます。その基本的な構文は次のとおりです。

SHOW COLUMNS FROM table_name;
ログイン後にコピー

このうち、table_name は名前です。クエリするテーブルの。このステートメントは、クエリされたテーブルの列情報を含む結果セットを返します。

たとえば、users という名前のテーブルの構造をクエリするには、次のステートメントを使用できます:

SHOW COLUMNS FROM users;
ログイン後にコピー

このステートメントは、次のような結果を返します:

+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| id          | int(11)      | NO   | PRI | NULL    | auto_increment |
| username    | varchar(255) | NO   | UNI | NULL    |                |
| password    | varchar(255) | NO   |     | NULL    |                |
| email       | varchar(255) | NO   | UNI | NULL    |                |
| created_at  | datetime     | YES  |     | NULL    |                |
| updated_at  | datetime     | YES  |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+
ログイン後にコピー

この結果セットには、クエリされたテーブルのすべての列と、フィールド名、データ型、NULL が許可されるかどうか、主キーかどうか、デフォルト値などの関連情報がリストされます。

特定のフィールドの情報をクエリする

テーブル内の特定のフィールドの情報のみをクエリする場合は、次のステートメントを使用できます:

SHOW COLUMNS FROM table_name WHERE Field = 'column_name';
ログイン後にコピー

Where table_name はクエリするテーブルの名前、column_name はクエリするフィールドの名前です。このステートメントはフィールドの詳細を返します。

たとえば、users テーブルの電子メール フィールドの情報をクエリするには、次のステートメントを使用できます:

SHOW COLUMNS FROM users WHERE Field = 'email';
ログイン後にコピー

このステートメントは次のような結果を返します:

+--------+--------------+------+-----+---------+-------+
| Field  | Type         | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+-------+
| email  | varchar(255) | NO   | UNI | NULL    |       |
+--------+--------------+------+-----+---------+-------+
ログイン後にコピー

テーブルのすべてのフィールドの情報をクエリする

テーブル内のすべてのフィールドの情報をクエリする場合は、次のステートメントを使用できます。

SELECT * FROM information_schema.columns WHERE table_name = 'table_name';
ログイン後にコピー

ここで、table_name はテーブルの名前です。クエリしたいテーブル。このステートメントは、クエリされたテーブルのすべての列情報を含む結果セットを返します。

たとえば、users テーブル内のすべてのフィールドの情報をクエリするには、次のステートメントを使用できます:

SELECT * FROM information_schema.columns WHERE table_name = 'users';
ログイン後にコピー

このステートメントは、次のような結果を返します:

+--------------+-----------------+--------------------+------+-----+---------+----------------+---------------------------------+---------+
| TABLE_CATALOG | TABLE_SCHEMA    | TABLE_NAME         | COLUMN_NAME | ORDINAL_POSITION | COLUMN_DEFAULT | IS_NULLABLE    | DATA_TYPE                       | CHARA... |
+--------------+-----------------+--------------------+------+-----+---------+----------------+---------------------------------+---------+
| def          | dbname          | users             | id          | 1                | NULL           | NO             | int                             ... |
| def          | dbname          | users             | username    | 2                | NULL           | NO             | varchar                         ... |
| def          | dbname          | users             | password    | 3                | NULL           | NO             | varchar                         ... |
| def          | dbname          | users             | email       | 4                | NULL           | NO             | varchar                         ... |
| def          | dbname          | users             | created_at  | 5                | NULL           | YES            | datetime                        ... |
| def          | dbname          | users             | updated_at  | 6                | NULL           | YES            | datetime                        ... |
+--------------+-----------------+--------------------+------+-----+---------+----------------+---------------------------------+---------+
ログイン後にコピー

この結果セットには、データベース名、フィールド名、データ型、null が許可されるかどうかなど、クエリされたテーブルのすべての列に関する詳細情報が含まれます。

テーブルの主キー情報をクエリする

MySQL では、各テーブルに主キーを設定して、テーブル内のレコードの一意性を確保できます。テーブルの主キー情報をクエリする場合は、次のステートメントを使用できます。

SHOW INDEX FROM table_name WHERE Key_name = 'PRIMARY';
ログイン後にコピー

ここで、table_name はクエリするテーブルの名前です。このステートメントはテーブルの主キー情報を返します。

たとえば、users テーブルの主キー情報をクエリするには、次のステートメントを使用できます:

SHOW INDEX FROM users WHERE Key_name = 'PRIMARY';
ログイン後にコピー

このステートメントは次のような結果を返します:

+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| users |          0 | PRIMARY  |            1 | id          | A         |           5 |     NULL | NULL   |      | BTREE      |         |               |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
ログイン後にコピー

この結果セットには、主キーが存在するテーブル名、主キー フィールドの名前、空にすることが許可されるかどうかなどの詳細情報がリストされます。

概要

MySQL では、クエリ テーブルのフィールド情報が非常に重要です。テーブルの構造と特性を理解し、データベースをより適切に設計および管理するのに役立ちます。この記事では、SHOW ステートメントを使用してテーブルの構造とフィールド情報をクエリする方法と、SELECT ステートメントを使用してテーブル内のすべてのフィールドの情報をクエリする方法を紹介します。さらに、テーブルの主キー情報をクエリする方法も紹介しました。この記事が MySQL データベースのより適切な運用に役立つことを願っています。

以上がmysqlクエリテーブルのフィールドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート