sql >> Database teknologi >  >> RDS >> Mysql

Kan jeg lave en mysql Select, Update og Delete i én forespørgsel?

Du kan ikke reducere antallet af forespørgsler - de gør alle forskellige ting - men du kan reducere antallet af rundrejser til databasen og antallet af analyser ved at indpakke det hele som en PLSQL-funktion.

Du kan dog ikke vælge dataene efter du har slettet dem.....men overvej:

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;

NB - du kan også køre flere valg i samme procedure og håndtere flere, forskelligt formede resultatsæt, f.eks. se denne side



  1. Hvor skal man bruge mysql_real_escape_string for at forhindre SQL-injektion?

  2. Oracle Aldersberegning fra fødselsdato og i dag

  3. Standard numeriske formatstrenge understøttet af FORMAT() i SQL Server

  4. Tilslutning til Oracle Database ved hjælp af SQL Server Integration Services