在 MySQL 中獲取列名

Preet Sanghavi 2023年1月30日 2022年5月13日
  1. 在 MySQL 中使用 Describe 語句獲取列名
  2. 在 MySQL 中使用 Show 語句獲取列名
在 MySQL 中獲取列名

在本教程中,我們旨在探索如何獲取 MySQL 資料庫中特定表的列名。

通常,在 MySQL 中處理資料時,我們往往會忘記資料庫特定表的列名和不同列的資料型別。

MySQL 幫助我們獲取這些資訊以讀取、獲取、更新或刪除任何具有正確定義和名稱的資訊。有幾種方法可以完成這項工作。

以下是可用於獲取 MySQL 中特定表的列名的不同方法:

  • 使用 DESCRIBE 語句。
  • 使用 SHOW 語句。

讓我們瞭解這些方法中的每一種是如何工作的。

在開始之前,我們建立一個虛擬資料集來處理。我們建立了一個表 student_information 以及幾行。

-- create the table student_information
CREATE TABLE student_information(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_information
INSERT INTO student_information(stu_id,stu_firstName,stu_lastName) 
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

在 MySQL 中使用 Describe 語句獲取列名

MySQL 為我們提供了 DESCRIBE 語句來獲取與特定表相關的資訊。DESCDescribe 都可以幫助我們理解表格的整體結構。此資訊包括列名、資料型別、預設值、列型別等。

該語句的基本語法如下所示。

DESCRIBE name_of_the_table;

使用 DESCRIBE 語句的另一種方法如下。

DESC name_of_the_table;

現在讓我們使用這條語句來獲取 student_information 表的所有列的名稱。我們可以使用以下查詢執行此操作。

DESCRIBE student_information;

上述查詢的輸出如下。

Field			Type			Null		Key		Default		Extra
stu_id			float			NO			PRI		-			-
stu_firstName	varchar(255)	YES			-		-			-
stu_lastName	varchar(255)	YES			-		-			-

正如我們在上面看到的,我們有 FieldTypeNullKeyDefaultExtra

Field 表示 student_information 的列名。Type 表示每一列的資料型別。

Null 表示列中的值是否可以獲取空值。Key 表示與列名關聯的鍵的型別。

正如我們所見,stu_id 顯示 PRI,它代表我們表的主鍵。最後,我們有 DEFAULT,它說明為列設定的任何預設值,而 Extra 儲存與該列關聯的任何額外資訊。

在 MySQL 中使用 Show 語句獲取列名

Show 語句是 Describe 語句的替代方案。show 語句的基本語法如下。

SHOW COLUMNS FROM `name_of_the_table`;

這裡,name_of_the_table 表示包含獲取的列的表名。我們可以使用 show 語句從 student_information 表中獲取所有列的名稱,如下所示。

SHOW COLUMNS FROM `student_information`;

上面查詢的輸出將為我們提供以下結果。

Field			Type			Null		Key		Default		Extra
stu_id			float			NO			PRI		-			-
stu_firstName	varchar(255)	YES			-		-			-
stu_lastName	varchar(255)	YES			-		-			-

如上面的輸出所示,SHOWDESCRIBE 可以幫助我們獲取表的列名和其他有用資訊。因此,藉助上述技術,我們可以高效地獲取 MySQL 中表的列名。

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub

相關文章 - MySQL Query