Sampai sekarang, saya ingin menyimpan daftar yang dipisahkan koma itu di SQL db saya - perhatikan semua peringatan!
Saya terus berpikir bahwa mereka memiliki manfaat dibandingkan tabel pencarian (yang menyediakan cara untuk basis data yang dinormalisasi). Setelah beberapa hari menolak, Saya telah melihat cahayanya :
- Menggunakan tabel pencarian TIDAK menyebabkan lebih banyak kode daripada operasi string jelek tersebut saat menggunakan nilai yang dipisahkan koma dalam satu bidang.
- Tabel pencarian memungkinkan format angka asli dan karenanya TIDAK lebih besar dari bidang csv tersebut. Ini LEBIH KECIL.
- Operasi string yang terlibat sangat kecil dalam kode bahasa tingkat tinggi (SQL dan PHP), tetapi mahal dibandingkan dengan menggunakan array bilangan bulat.
- Basis data tidak dimaksudkan agar dapat dibaca manusia, dan kebanyakan bodoh untuk mencoba tetap berpegang pada struktur karena keterbacaan/kemampuan mengedit langsung, seperti yang saya lakukan.
Singkatnya, ada alasan mengapa tidak ada fungsi SPLIT() asli di MySQL.