"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo actualizar filas y obtener ID actualizados en MySQL sin una subconsulta?

¿Cómo actualizar filas y obtener ID actualizados en MySQL sin una subconsulta?

Publicado el 2024-11-08
Navegar:178

How to Update Rows and Get Updated IDs in MySQL Without a Subquery?

Combinar consultas SELECT y UPDATE en MySQL

Combinar consultas SELECT y UPDATE en una sola operación puede ser útil para optimizar el rendimiento de la base de datos. En este caso, un usuario desea combinar las siguientes consultas:

SELECT * FROM table WHERE group_id = 1013 and time > 100;
UPDATE table SET time = 0 WHERE group_id = 1013 and time > 100

Si bien un enfoque de subconsulta puede no proporcionar los resultados deseados, existe una solución que puede lograr el objetivo sin una subconsulta. Esta solución implica el uso de una variable definida por el usuario (@uids) para almacenar los ID de fila actualizados:

UPDATE footable
   SET foo = 'bar'
 WHERE fooid > 5
   AND ( SELECT @uids := CONCAT_WS(',', fooid, @uids) );
SELECT @uids;```
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3