Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySql, podziel ciąg i wstaw do tabeli

Możesz zbudować jedno zapytanie INSERT (ponieważ instrukcja pozwala wstawić wiele rekordów) i uruchomić je z przygotowane wyciągi , np. -

SET @MenuIDs = '1,2,3';
SET @RoledID = 100;

SET @values = REPLACE(@MenuIDs, ',', CONCAT(', ', @RoledID, '),('));
SET @values = CONCAT('(', @values, ', ', @RoledID, ')'); -- This produces a string like this -> (1, 100),(2, 100),(3, 100)

SET @insert = CONCAT('INSERT INTO RolesMenus VALUES', @values); -- Build INSERT statement like this -> INSERT INTO RolesMenus VALUES(1, 100),(2, 100),(3, 100)

-- Execute INSERT statement
PREPARE stmt FROM @insert;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

Jak widać, można to zrobić bez procedury składowanej.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySqlDB Pythona nie jest aktualizowany wiersz

  2. Paginacja w nodejs z mysql

  3. MYSQL, jeśli zapytanie wybierające zwraca 0 wierszy, a następnie inne zapytanie wybierające?

  4. Usuń zduplikowane wiersze mysql bez klucza podstawowego

  5. MONTH() Przykłady – MySQL