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

MySQLのSHOWINDEX、SHOW INDEXES、SHOW KEYSの違いは?


show index、show index、showkeysに違いはありません。それらは同じような意味を持っています。

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

mysql> create table DemoTable1549
   -> (
   -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> EmployeeName varchar(20)
   -> );
Query OK, 0 rows affected (0.82 sec)

以下は、インデックスを作成するためのクエリです-

mysql> create index name_index1 on DemoTable1549(EmployeeName);
Query OK, 0 rows affected (0.41 sec)
Records: 0  Duplicates: 0  Warnings: 0

以下は、SHOWINDEX-

のクエリです。
mysql> show index from DemoTable1549;

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

+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| Table         | Non_unique | Key_name    | Seq_in_index | Column_name  | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | Visible |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| demotable1549 |          0 | PRIMARY     |            1 | EmployeeId   |         A |           0 |     NULL |   NULL |      | BTREE      |         |               |     YES |
| demotable1549 |          1 | name_index1 |            1 | EmployeeName |         A |           0 |     NULL |   NULL |  YES | BTREE      |         |               |     YES |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
2 rows in set (0.17 sec)

SHOWINDEXESのクエリは次のとおりです-

mysql> show indexes from DemoTable1549;

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

+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| Table         | Non_unique | Key_name    | Seq_in_index | Column_name  | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | Visible |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| demotable1549 |          0 | PRIMARY     |            1 | EmployeeId   |         A |           0 |     NULL |   NULL |      | BTREE      |         |               |     YES |
| demotable1549 |          1 | name_index1 |            1 | EmployeeName |         A |           0 |     NULL |   NULL | YES  | BTREE      |         |               |     YES |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
2 rows in set (0.00 sec)

SHOWKEYSを実装するためのクエリは次のとおりです-

mysql> show keys from DemoTable1549;

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

+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| Table         | Non_unique | Key_name    | Seq_in_index | Column_name  | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | Visible |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
| demotable1549 |          0 | PRIMARY     |            1 | EmployeeId   |         A |           0 |     NULL |   NULL |      | BTREE      |         |               |     YES |
| demotable1549 |          1 | name_index1 |            1 | EmployeeName |         A |           0 |     NULL |   NULL | YES  | BTREE      |         |               |     YES |
+---------------+------------+-------------+--------------+--------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+
2 rows in set (0.00 sec)

  1. MySQLでは、!=NULLとISNOT NULLの違いは何ですか?

    値を!=NULLと比較すると、NULLが返されます。したがって、!=NULLは無意味です。 !=NULLとISNOT NULLの違いを確認するために、最初にテーブルを作成しましょう。 まずテーブルを作成しましょう- mysql> create table DemoTable1970    (    Value int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTa

  2. MySQLとPostgreSQLの違い

    この投稿では、MySQLとPostgreSQLの違いを理解します。 MySQL リレーショナルデータベース管理システムです。 オラクル社が開発した製品です。 Windows、Mac OS X、Linux、BSD、UNIX、z / OS、Symbian、AmigaOSでサポートされています。 延長することはできません。 このシステムでは、phpMyAdminツールがGUIを提供します。 MysqldumpとXtraBackupは、MySQLでバックアップを提供します。 一時的なテーブルを提供します。 マテリアライズドビューは提供されません。