in

¿Cómo puedo eliminar usando INNER JOIN con SQL Server?

apple touch icon@2

No especificas las tablas para Company y Date, y es posible que desee solucionarlo.

SQL estándar usando MERGE:

MERGE WorkRecord2 T
   USING Employee S
      ON T.EmployeeRun = S.EmployeeNo
         AND Company = '1'
         AND Date="2013-05-06"
WHEN MATCHED THEN DELETE;

La respuesta de Devart también es estándar SQL, aunque incompleto. Debería verse más como esto:

DELETE
  FROM WorkRecord2
  WHERE EXISTS ( SELECT *
                   FROM Employee S
                  WHERE S.EmployeeNo = WorkRecord2.EmployeeRun
                        AND Company = '1'
                        AND Date="2013-05-06" );

Lo importante a tener en cuenta sobre lo anterior es que está claro que la eliminación se dirige a una sola tabla, como se impone en el segundo ejemplo al requerir una subconsulta escalar.

Para mí, las diversas respuestas de sintaxis propietarias son más difíciles de leer y comprender. Supongo que la mentalidad para se describe mejor en la respuesta por frans eilering, es decir, la persona que escribe el código no se preocupa necesariamente por la persona que leerá y mantendrá el código.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Función de biblioteca C – rand ()

gfg 200x200 min

Hashtable en Java – GeeksforGeeks