函数的作用
都是对字符串进行拼接,但是有细微上的差别
Concat
无分隔符对字符串全部拼接,没有分隔符

CONCAT_WS
有拼接符对字符串进行拼接,第一个参数为连接符,将后面所有参数拼接成一个字符串

两者区别
-
- 能否对int类型拼接
- concat能直接对int类型拼接,并且返回string类型
- concat_ws只能对"string or array<string>"进行拼接
- 能否对int类型拼接
-
- 拼接null类型
- 当拼接中有null类型,concat直接返回null
- concat_ws则会忽略null类型
- 拼接null类型
总结
在使用SQL函数 concat()拼接函数时,如果发现 拼接出来的 全是NULL,一定要想到,可能会有 字段为NULL的问题导致的。 实际情况下,具体用哪个,还需要单独考虑。
文章评论