ไม่มีความแตกต่างใดๆ สามคำสั่งนี้ทำงานเหมือนกันทุกประการ ใช้แสดงข้อมูลดัชนีของตาราง
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)
ผลลัพธ์ของทั้งสามคำสั่งเหมือนกันทุกตัว:
mysql> SHOW INDEX FROM DemoTable1549;
mysql> SHOW INDEXES FROM DemoTable1549;
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)
สรุป: ใช้คำสั่งใดก็ได้ตามความชอบ INDEXS และ KEYS เป็นชื่อทางเลือก (alias) ของ INDEX