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

Можете ли да разделите/раздуете поле в MySQL заявка?

Досега исках да запазя тези списъци, разделени със запетая, в моята SQL база данни - добре съм наясно с всички предупреждения!

Непрекъснато си мислех, че те имат предимства пред таблиците за търсене (които осигуряват начин към нормализирана база данни). След няколко дни отказ, видях светлината :

  • Използването на справочни таблици НЕ причинява повече код от тези грозни операции с низове, когато се използват стойности, разделени със запетая, в едно поле.
  • Таблицата за справка позволява естествени числови формати и следователно НЕ е по-голяма от тези csv полета. Въпреки това е ПО-МАЛКО.
  • Включените операции с низове са тънки в езиковия код на високо ниво (SQL и PHP), но скъпи в сравнение с използването на масиви от цели числа.
  • Базите данни не са предназначени да бъдат четими от човека и е най-вече глупаво да се опитваме да се придържаме към структури поради тяхната четливост/директна редактираност, както направих аз.

Накратко, има причина да няма естествена функция SPLIT() в 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. MySQL:чувствителен ли е регистърът на буквите в израза SELECT?

  2. Как да нулирате/промените MySql root парола на командния ред в ubuntu linux

  3. MySQL find_in_set с множество низове за търсене

  4. Какви са известните начини за съхраняване на дървовидна структура в релационна БД?

  5. Как да стартирам MySQL с --skip-grant-tables?