在 MySQL 中儲存陣列
在 MySQL 中,不支援陣列作為資料型態。但是,還有其他方法可以處理類似於數組的資料。
表格和 JOIN 方法
一種方法是建立多個表格並使用 JOIN 建立它們之間的關係。考慮以下模式:
CREATE TABLE person ( id INT NOT NULL PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE fruits ( fruit_name VARCHAR(20) PRIMARY KEY, color VARCHAR(20), price INT ); CREATE TABLE person_fruit ( person_id INT, fruit_name VARCHAR(20), PRIMARY KEY (person_id, fruit_name) );
這裡,person_fruit 表包含與一個人關聯的每種水果的一行。這種方法可以讓您儲存基本上無限數量的水果。
範例:
person_id | fruit_name |
---|---|
1 | banana |
1 | apple |
1 | orange |
查詢:
SELECT p.*, f.* FROM person p INNER JOIN person_fruit pf ON pf.person_id = p.id INNER JOIN fruits f ON f.fruit_name = pf.fruit_name;
此查詢與某個人相關的所有水果都傳回。
以上是MySQL中如何儲存類似數組的資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!