Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wiele opcji pól wyboru przechowywanych w jednym polu w bazie danych

Jak zauważył Jrod, używając LUBIE słowo kluczowe prawdopodobnie zaspokoi Twoje potrzeby.

Jednak na marginesie istnieją inne sposoby, które mogą być lepsze na dłuższą metę.

Relacja 1-N

Jeśli masz swoje umiejętności w osobnej tabeli, możesz połączyć je w relacji jeden do wielu, co oznaczałoby, że możesz wykonywać zapytania według umiejętności, a następnie dołączyć do zapytania odpowiednie osoby. Umożliwiłoby to uzyskanie bardziej złożonych zapytań, takich jak możliwość wyszukiwania więcej niż jednej umiejętności dopasowywania lub umiejętności dopasowywania warunkowego, ale nie innej umiejętności.

Bit flagi

Ponieważ mówisz, że są to pola wyboru, zakładam, że twoje umiejętności są ograniczone (liczba pól wyboru), innym podejściem jest użycie liczby całkowitej i flag bitowych – na przykład:

  • Jawa =1
  • C++ =2
  • Lisp` =4
  • haskell =8
  • Pyton =16

Zsumowanie wartości skumulowanej ze wszystkich pól wyboru i zapisanie jej jako liczby całkowitej pozwoliłoby na zapytanie bazy danych przy użyciu bitowe ORAZ (&)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java i SQL :zwróć null lub wyrzuć wyjątek?

  2. Pakiet MySQL dla Pythona 3.7

  3. Zapytania hierarchiczne w MySQL

  4. Zapobiegaj wprowadzaniu zduplikowanych danych do bazy danych mysql

  5. Zdalne połączenie MySQL nie powiodło się z nieznaną metodą uwierzytelniania