Как concat_ws несколько полей и удалять дублирующие разделители для пустых слотов
Когда вы CONCAT_WS(' ',field1,field2,field3)
в MySQL и если одно из полей пуст, а не null, вы получаете несколько разделителей.
Примером может быть:
John[space][space][space]Doe[space]III.
Как я могу убедиться, что есть только один разделитель.
Ответы
Ответ 1
Сделайте это так:
CONCAT_WS(' ', NULLIF(field1, ''), NULLIF(field2, ''), NULLIF(field3, ''));
CONCAT_WS
будет пропускать любые нулевые значения и с помощью NULLIF
любых пустых тоже.
Примечание. Вы не можете заменить регулярное выражение. MySQL не поддерживает его.