mysql中切割字符串

mysql中切割字符串

假设被切割的字符串为1,2,3,4,5。
首先认识下面这些函数

  1. 通过SUBSTRING_INDEX(str,delim,count)按照指定的字符切割字符串,返回指定位置之前的字符串
    • str:被切割的字符串
    • delim:被切割的标识符,即按照此字符切割字符串
    • count:为正数时,从左往右切割;为负数时。从右往左切割。绝对值是结果的长度
  2. LENGTH( ‘1,2,3,4,5’):返回字符串的长度。在这个例子中,长度为9,包含逗号
  3. LENGTH( REPLACE ( ‘1,2,3,4,5’, ‘,’, ‘’ ) ):用’'替代切割符,在这个例子里是, ,可以得到想要的数据的长度,也就是5
  4. SELECT substring_index( substring_index( c.original_id, ',', tz.Time_zone_id ), ',',- 1 ) test SELECT substring_index( substring_index( c.original_id, ',', tz.Time_zone_id ), ',',- 1 ) test FROM tb_relation_circle c JOIN mysql.time_zone tz ON tz.Time_zone_id < ( LENGTH( c.original_id ) - LENGTH( REPLACE ( c.original_id, ',', '' ) ) + 2 )
    这里借用了一个mysql自带的time_zone表,用来计算截取的最终长度,查找出来的结果自然是该长度下的分割后的结果集。

你可能感兴趣的:(JAVA,WEB)