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

Bisakah Anda membagi/meledak bidang dalam kueri MySQL?

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.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menyimpan Data di MySQL sebagai JSON

  2. Cara Memeriksa Ukuran Semua Tabel dalam Database di MySQL

  3. Ketersediaan Tinggi dengan Anggaran Sedikit - Menyebarkan Cluster Galera MySQL Dua Node Minimal

  4. Menghitung Ukuran Pool Buffer InnoDB untuk Server MySQL Anda

  5. Cara Menghapus Spasi Leading dan Trailing di MySQL