比如 在表中查出一堆数据
select
provice,
city,
country
from a
现在需要将三个字段(省市区)拼成一个字段信息
方案1:
select
concat(province, city, country) address
from a
方案2:
在java程序中通过for循环拼接。
请问,哪种效率较高?
比如 在表中查出一堆数据
select
provice,
city,
country
from a
现在需要将三个字段(省市区)拼成一个字段信息
方案1:
select
concat(province, city, country) address
from a
方案2:
在java程序中通过for循环拼接。
请问,哪种效率较高?
如果你需要拼接的是省市区,全国的数据量也不大,直接通过sql拼接就好了,但是你的写法不对
concat只能一次拼两个字符串,正确写法是concat(concat(province, city), country),
但是你也可以这样写 province||city||country ,更简洁
如果数据量很大,建议从数据库查出来放到程序中拼接,因为会长时间占用数据库资源,
程序中循环拼接是很快的
下面我是直接通过sql拼接得到的全国省市区的数据,总用时69ms