Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara menyimpan array di MySQL?

Cara yang tepat untuk melakukannya adalah dengan menggunakan beberapa tabel dan JOIN mereka dalam pertanyaan Anda.

Misalnya:

CREATE TABLE person (
`id` INT NOT NULL PRIMARY KEY,
`name` VARCHAR(50)
);

CREATE TABLE fruits (
`fruit_name` VARCHAR(20) NOT NULL PRIMARY KEY,
`color` VARCHAR(20),
`price` INT
);

CREATE TABLE person_fruit (
`person_id` INT NOT NULL,
`fruit_name` VARCHAR(20) NOT NULL,
PRIMARY KEY(`person_id`, `fruit_name`)
);

person_fruit tabel berisi satu baris untuk setiap buah yang dikaitkan dengan seseorang dan secara efektif menautkan person dan fruits tabel bersama-sama, I.E.

1 | "banana"
1 | "apple"
1 | "orange"
2 | "straberry"
2 | "banana"
2 | "apple"

Saat Anda ingin mengambil seseorang dan semua buahnya, Anda dapat melakukan sesuatu seperti ini:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel Eloquent vs pembuat kueri - Mengapa menggunakan fasih untuk menurunkan kinerja

  2. Python Terhubung Ke Database MySQL Dengan Konektor MySQL &Contoh PyMySQL

  3. Memuat kelas com.mysql.jdbc.Driver ... adalah pesan yang tidak digunakan lagi

  4. Cegah kenaikan otomatis pada sisipan duplikat MySQL

  5. Apakah MySQL melanggar standar dengan mengizinkan memilih kolom yang bukan bagian dari grup berdasarkan klausa?