Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

nhiều giá trị chèn hoạt động trong thủ tục mysql?

Tôi không có máy chủ MySQL vì vậy có thể có lỗi cú pháp và lỗi +1 (nghĩa là có thể không nắm bắt được mục cuối cùng trong danh sách, có thể không tiến triển qua mục đầu tiên, v.v., các vấn đề được khắc phục bằng cách đặt +1 vào mã), nhưng về cơ bản bạn muốn thay thế câu lệnh INSERT của mình bằng câu lệnh này.

DECLARE INT _CURSOR 0;
DECLARE INT _TOKENLENGTH 0;
DECLARE VARCHAR _TOKEN NULL;

SELECT LOCATE(str, ",", _CURSOR) - _CURSOR INTO _TOKENLENGTH;

LOOP

    IF _TOKENLENGTH <= 0 THEN
        SELECT RIGHT(str, _CURSOR) INTO _TOKEN;
        INSERT INTO input_data1(mobile) VALUE _TOKEN;
        LEAVE;
    END IF;

    SELECT SUBSTRING(str, _CURSOR, _TOKENLENGTH) INTO _TOKEN;

    INSERT INTO input_data1(mobile) VALUE _TOKEN;

    SELECT _CURSOR + _TOKENLENGTH + 1 INTO _CURSOR;

    SELECT LOCATE(str, ",", _CURSOR + 1) - _CURSOR INTO _TOKENLENGTH;

END LOOP;

Lệnh gọi hàm của bạn sau đó sẽ giống như

EXEC mobile_series1('9619825525,9619825255,9324198256')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Id ngẫu nhiên trong sqlalchemy (giá treo)

  2. Memcache so với MySQL trong bộ nhớ

  3. Chạy di chuyển với Rails trong vùng chứa Docker với nhiều bản sao vùng chứa

  4. Thêm số tăng tự động vào cột hiện có mà không ảnh hưởng đến giá trị bản ghi hiện tại

  5. làm cách nào để xuất ra rowName dựa trên bảng liên kết?