众所周知,在MySQL、SQLSERVER中,都有字符串连接函数,那么,HQL也不例外。
在学习、工作中,不可避免的会遇到需要将两个字段合并展示的需要。
最基础的一个方法是:CONCAT('abc','def')
这个函数的用法有一点需要注意,就是当遇到字段为空时,空的形式不同,结果也不同。
eg:SELECT CONCAT('abc',NULL) 结果为NULL
SELECT CONCAT('abc','') 结果为abc
并且,concat函数是将两个字段直接相连,中间不可加连接符。
比如:
结果:
那么,这个函数在一些我们需要添加连接符的情境下就不能使用了。
这时,就有了concat_ws('&','abc','def'),这个函数可以在两个字段间添加需要的连接符。那么,这个函数在遇到空的字符串时,
如何连接呢?
eg:select concat_ws('&','abc','') 结果为:abc&
select concat_ws('&','abc',NULL) 结果为:abc
如上面同样的例子:
结果:
另外,还有一个聚合函数,GROUP_CONCAT(),我还没有具体使用过,在以后使用到时,再进行补充。
这一篇主要举例了一些字符串连接函数,下一篇中将会介绍一些,字符串拆分函数。
欢迎大家补充其他的方法。