MYSQL把字串按逗號拆分
阿新 • • 發佈:2019-01-26
在mysql中,如何把傳入的字串按照一定的分割符拆分,然後寫入表中.
mysql> create table tt(name varchar(10));
Query OK, 0 rows affected (0.00 sec)
mysql> select * from tt;
Empty set (0.00 sec)
mysql>
BEGIN DECLARE V_START INTEGER; DECLARE V_LOCATE INTEGER; SET V_START=1; BEGIN DECLARE V_STR_BEFORE VARCHAR(4000); WHILE INSTR(v_str,',')>0 DO SET V_LOCATE =INSTR(v_str,','); SET V_STR_BEFORE=SUBSTRING(v_str,V_START,V_LOCATE-V_START); INSERT INTO tt(NAME) VALUES(V_STR_BEFORE); commit; SET V_STR =SUBSTRING(v_str,V_LOCATE+1); END WHILE; INSERT INTO tt(NAME) VALUES(V_STR); END; select * from tt; END
mysql> call test1('x,y,z,t')
-> ;
+------+
| name |
+------+
| x |
| y |
| z |
| t |
+------+
4 rows in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql>