我有这样的ID和相应的字符串:
id place
234 USA_NY_Buffalo
我想将地方字符串拆分为三个字符串,每个字符串都有自己的列:
id Country State City
234 USA NY Buffalo
当我尝试像这样分割字符串时:
SELECT id, SPLIT(place,"_") FROM mytable
我得到了
id place
234 USA
234 NY
234 Buffalo
是否可以将字符串拆分为第一个“_”,然后再将第二个字符串拆分为“_”?
答案 0 :(得分:1)
如果字符串总是只有Country,State和City,那么你可以尝试类似的东西。
select SUBSTRING_INDEX('USA_NY_Buffalo', '_', 1) AS country,
SUBSTRING_INDEX(SUBSTRING_INDEX('USA_NY_Buffalo', '_', 2), '_', -1) AS State,
SUBSTRING_INDEX(SUBSTRING_INDEX('USA_NY_Buffalo', '_', 3), '_', -1) AS City;