在mysql里字符串里取不同位置的数字


说明:要将字段salary字段的数字拆分成成3个字段,max_salary,min_salary,avg_salary,所用到 的sql语句:

wKioL1h3Rzujam1lAACa64h4e6A054.jpg

这是取max_salary的数字的其中的一句:

update logispersondata_all_bak set max_salary=substring_index(substring_index(substring_index(substring_index(substring_index(salary, '-', -1),'元',1),'/',1),'+',1),'以下',1) where salary like'%月%';
update logispersondata_all_bak set min_salary=min_salary/12 where salary like'%年%'


主要用了

substring_index(str,delim,count)
select substring_index('www.sql.com', '.', 2);
+------------------------------------------------+
| substring_index('www.sql.com', '.', 1) |
+------------------------------------------------+
| www
 substring_index('www.sql.com', '.', -2) |
+-------------------------------------------------+
| com