Try*_*est 3 mysql concatenation concat-ws
SELECT CONCAT_WS(',', Col1, Col2, Col3 ) AS combined FROM table_name
Run Code Online (Sandbox Code Playgroud)
目前,如果我有字段 Col1 = 'hello', Col2 = 'Bye', Col2 = 'Goodnight'
上面的 select 语句会返回 hello,Bye,Goodnight 这很好。
如果任何一个 Cols 为空怎么办。仍然会添加逗号。比如你好,晚安。
有没有办法说 Col 是否为空然后忽略它?(这是 MySQL)
如果函数的任何一个参数是 ,则函数会CONCAT_WS忽略NULL值并且不会生成分隔符NULL。
对于空''值,即等于,您可以使用值NULLIF:
SELECT CONCAT_WS(',', NULLIF(Col1, ''), NULLIF(Col2, ''), NULLIF(Col3, '') ) AS combined
FROM table_name
Run Code Online (Sandbox Code Playgroud)