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

Beberapa opsi kotak centang disimpan ke dalam satu bidang dalam database

Seperti yang ditunjukkan Jrod menggunakan LIKE kata kunci kemungkinan akan memenuhi kebutuhan Anda.

Namun sebagai tambahan, ada cara lain yang mungkin lebih baik dalam jangka panjang.

Hubungan 1-N

Jika Anda memiliki keahlian dalam tabel terpisah, Anda kemudian dapat menghubungkannya dalam hubungan satu ke banyak, itu berarti Anda dapat melakukan kueri berdasarkan keahlian dan kemudian bergabung dengan orang yang relevan ke kueri. Ini akan memungkinkan Anda untuk memiliki kueri yang lebih kompleks seperti dapat menelusuri lebih dari satu keterampilan yang cocok atau keterampilan pencocokan bersyarat tetapi bukan keterampilan yang lain.

Bendera kecil

Seperti yang Anda katakan itu adalah kotak centang, saya berasumsi bahwa keterampilan Anda terbatas (berdasarkan jumlah kotak centang) pendekatan lain adalah menggunakan bilangan bulat dan menggunakan bendera bit – misalnya:

  • Java =1
  • C++ =2
  • Lisp` =4
  • haskell =8
  • Python =16

Menambahkan nilai akumulatif dari semua kotak centang Anda dan menyimpannya sebagai bilangan bulat akan memungkinkan Anda untuk menanyakan database menggunakan sedikit demi sedikit DAN (&)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara terbaik untuk menangani masalah konkurensi

  2. Hapus data dari semua tabel di MYSQL

  3. Neo4j - Memilih data dengan MATCH menggunakan Cypher

  4. nilai yang telah dipilih sebelumnya untuk kotak tarik-turun dinamis dengan banyak nilai

  5. Replikasi satu tabel