MySQL存储过程数组实现


MySQL存储过程数组实现:

  1. DELIMITER $$ 
  2. DROP PROCEDURE IF EXISTS `array`$$ 
  3. CREATE  PROCEDURE `array`() 
  4. BEGIN 
  5. SET @array_content="www mysql com hcymysql blog 51cto com"
  6. SET @i=1
  7. SET @count=CHAR_LENGTH(@array_content)-CHAR_LENGTH(REPLACE(@array_content,' ','')) + 1; 
  8. -- 得出数组成员总数 
  9. CREATE TABLE test.tmp(field1 VARCHAR(100)); 
  10. WHILE @i <= @count 
  11. DO 
  12. INSERT INTO test.tmp VALUES  
  13. (SUBSTRING_INDEX(SUBSTRING_INDEX(@array_content,' ',@i),' ',-1));      
  14. -- 依次插入每个成员  
  15. SET @i=@i+1; 
  16. END WHILE; 
  17. END$$ 
  18. DELIMITER ; 

测试:

相关内容