查询某子字符串在字符串中第N次出现的位置(示例的子字符串是点号,是倒数第一次出现的位置, 位置均从1开始,不是从0开始):
SELECT LENGTH(t.str) - LENGTH(SUBSTRING_INDEX(t.str, '.', -1)) , t.* from table01 t where instr(t.str, '.')>0;
查询某子字符串在字符串中第2次出现的位置:
SELECT LENGTH(t.str) - LENGTH(SUBSTRING_INDEX(t.str, '.', 2)) , t.* from table01 t where instr(t.str, '.')>0;