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