Estoy tratando de encontrar las filas que están en una tabla pero no en otra, ambas tablas están en bases de datos diferentes y también tienen diferentes nombres de columna en la columna que estoy usando para hacer coincidir .Seleccione de una tabla donde no esté en otra
Tengo a continuación una consulta, código, y creo que probablemente funciona pero es demasiado lento:
SELECT `pm`.`id`
FROM `R2R`.`partmaster` `pm`
WHERE NOT EXISTS (
SELECT *
FROM `wpsapi4`.`product_details` `pd`
WHERE `pm`.`id` = `pd`.`part_num`
)
lo que la consulta está tratando de hacer de la siguiente manera:
seleccionar todas las ID de la base de datos R2R.partmaster que no están en la base de datos wpsapi4.product_details. Las columnas que estoy buscando son partmaster.id & product_details.part_num
Para mí existe/no existe es la mejor manera ya que expresar quiere claramente que desea obtener. Pero parece ser la forma más lenta (en MySQL). Comprueba esto: http://explainextended.com/2009/09/18/not-in-vs-not-exists-vs-left-join-is-null-mysql/ – DavidEG