Mysql
 sql >> база данни >  >> RDS >> Mysql

Най-добрият начин за съхраняване и извличане на синоними в база данни mysql

Не използвайте (един) низ за съхраняване на различни записи.

С други думи:Създайте таблица с думи (word_ID,word) и таблица на синоними (word_ID,synonym_ID), след което добавете думата към таблицата с думи и по един запис на синоним към таблицата на синонимите.

АКТУАЛИЗИРАНЕ (добавен трети синоним)

Вашата таблица с думи трябва да съдържа всяка дума (ВСИЧКИ), вашата таблица със синоними съдържа само указатели към синоними (не една дума!) ..

Ако имате три думи:A, B и C, които са синоними, вашата база данни ще бъде

WORD_TABLE            SYNONYM_TABLE
ID | WORD             W_ID | S_ID
---+-----             -----+-------
1  | A                  1  |  2
2  | B                  2  |  1
3  | C                  1  |  3
                        3  |  1
                        2  |  3
                        3  |  2  

Не се страхувайте от многото записи в SYNONYM_TABLE, те ще се управляват от компютъра и са необходими за отразяване на съществуващите връзки между думите.

2-ри подход

Може също да се изкушите (не мисля, че трябва!) да използвате една таблица, която има отделни полета за дума и списък със синоними (или идентификатори) (word_id,word,synonym_list). Внимавайте, че това противоречи на начина, по който работи релационната БД (едно поле, един факт).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Подаване на име на колона като параметър в MySQL

  2. Синтактична грешка с IF EXISTS UPDATE ELSE INSERT

  3. Намерете най-новите дублирани ID с MySQL

  4. Върнете се към традиционната репликация от GTID

  5. Как да инсталирам Python MySQLdb модул с помощта на pip?