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

Czy mogę wykonać mysql Select, Update i Delete w jednym zapytaniu?

Nie możesz zmniejszyć liczby zapytań — wszystkie robią różne rzeczy — ale możesz zmniejszyć liczbę podróży w obie strony do bazy danych i liczbę parsów, opakowując to wszystko jako funkcję PLSQL.

Nie możesz jednak wybrać danych po ich usunięciu… ale rozważ:

CREATE PROCEDURE s_u_d(a)
BEGIN

UPDATE tab_x SET tab_x.avalue=1 WHERE tab_x.another=a;

DELETE FROM tab_y WHERE tab_y.avalue=a;

SELECT * 
FROM tab_x
WHERE tab_x.another=a;

END;

Uwaga - możesz również uruchomić wiele selekcji w tej samej procedurze i obsługiwać wiele zestawów wyników o różnych kształtach, np. zobacz tę stronę



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Narzędzie do monitorowania zapytań mysql

  2. 3 sposoby na wykrycie, czy ciąg pasuje do wyrażenia regularnego w MySQL

  3. Czy możesz używać liczb jako nazw tabel w MySQL?

  4. Tworzenie funkcjonalności wyszukiwania z Laravel 4

  5. host „localhost” nie może połączyć się z tym serwerem MySQL (#1130)