我们假设我的这一栏有这样的数据:
IT > FR
ES > PT
FR > IT
我想要显示两个单独的列,其结果是:第一个,只有第一个国家/地区的国家/地区代码,第二个,只有第二个国家/地区的代码。
我们使用substring函数。没关系。
现在,让我们假设我有一个名为border的列:
IT > FR
ES > PT
FR > IT
DE > PORTO
ES > NL
NO2 > UK
边框的长度不一样!
有没有办法在子字符串函数中指定我只想从列>
向后或向后的字符串?
答案 0 :(得分:0)
https://www.w3resource.com/mysql/string-functions/mysql-locate-function.php
Locate([your column],'>',1)
或者我错过了什么?
Left([Your column],Locate([your column],'>',1)-1) --To grab the left side
Right([Your column],Locate([your column],'>',1)+1) --to grab the right side
答案 1 :(得分:0)
使用substring_index()
:
select substring_index(border, ' > ', 1) as country_1,
substring_index(border, ' > ', -1) as country_2
这是一个内置的MySQL函数。请注意,这是使用'>'
周围的空格,因为这似乎是数据的结构。