MySQL是一種關系型數據庫管理系統,其中最基本的概念就是“列”和“行”。
列是數據庫中的一個屬性,它代表了一種數據類型,比如字符串、數字、日期等等。在MySQL中,每個表都包含多個列,而每個列會有相應的名稱和數據類型。當我們向一張表中插入新的數據時,需要為每個列都指定相應的值。
INSERT INTO table_name (column1, column2, column3) VALUES (value1, value2, value3);
行是數據庫中的一條記錄,它代表了一組數據,其中每個數據對應了表中的某個列。在MySQL中,每個表都包含多個行,而每個行會有一個唯一的標識符,稱為“主鍵”。
CREATE TABLE table_name ( id INT PRIMARY KEY, col1 VARCHAR(255), col2 INT );
有時候,我們希望將列轉換成行,或者將行轉換成列,以滿足一些特定的需求。在MySQL中,可以使用PIVOT語句和UNPIVOT語句來實現這種轉換。
PIVOT語句將一個表中的多個行轉換成多個列,其中每個列代表了一個行的屬性,同時還保留了其他的列。例如,我們有一個表包含了每個人的姓名、年齡和性別,我們想要將姓名、年齡和性別分別作為列來呈現。
SELECT name, MAX(CASE WHEN attribute = 'age' THEN value END) AS age, MAX(CASE WHEN attribute = 'gender' THEN value END) AS gender FROM person GROUP BY name;
UNPIVOT語句則是將一個表中的多個列轉換成多個行,其中每個行代表了一個列的屬性,同時還保留了其他的列。例如,我們有一個表包含了每個人的姓名、年齡和性別,我們想要將姓名、年齡和性別分別作為行來呈現。
SELECT name, attribute, value FROM person UNPIVOT (value FOR attribute IN (age, gender)) AS unpiv;
上一篇vue bueaty
下一篇html心形代碼圖標