Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Posso fazer um mysql Select, Update e Delete em uma consulta?


Você não pode reduzir o número de consultas - todas elas fazem coisas diferentes - mas você pode reduzir o número de viagens de ida e volta ao banco de dados e o número de análises envolvendo tudo como uma função PLSQL.

No entanto, você não pode selecionar os dados depois de excluí-los, mas considere:
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 - você também pode executar várias seleções no mesmo procedimento e lidar com vários conjuntos de resultados de formatos diferentes, por exemplo, veja esta página