Tengo una consulta de MySQL que une dos tablasMySQL Ingreso en los que no existe
- votantes
Hogares se unen en voters.household_id y household.id
Ahora lo que tengo que hacer es modificarlo donde la tabla de votantes se une a una tercera tabla llamada eliminación, a lo largo de voter.id y eliminación.voter_id, cualquiera que sea la captura es que quiero excluir cualquier registro en la tabla de votantes que tenga un registro correspondiente en la eliminación mesa. ¿Cómo hago una consulta para hacer esto?
esta es mi consulta actual
SELECT `voter`.`ID`, `voter`.`Last_Name`, `voter`.`First_Name`,
`voter`.`Middle_Name`, `voter`.`Age`, `voter`.`Sex`,
`voter`.`Party`, `voter`.`Demo`, `voter`.`PV`,
`household`.`Address`, `household`.`City`, `household`.`Zip`
FROM (`voter`)
JOIN `household` ON `voter`.`House_ID`=`household`.`id`
WHERE `CT` = '5'
AND `Precnum` = 'CTY3'
AND `Last_Name` LIKE '%Cumbee%'
AND `First_Name` LIKE '%John%'
ORDER BY `Last_Name` ASC
LIMIT 30
+1 vuelve más rápido que las consultas secundarias – ravi404
+1 mucho más rápido en alta carga y luego subconsultas + si U puede hacer uniones en lugar de subconsultas, simplemente hacer UNIONES es mucho más simple para el analizador. Otro ejemplo útil, U puede querer obtener un resultado si hay algunas filas en la tabla de la derecha o si no hay ninguna: 'SELECT V. * FROM voter V LEFT JOIN eliminación E ON V.id = E.voter_id O E .voter_id IS NULL' ex .: si U no desea almacenar todos los registros en la tabla correcta para cada fila de la izquierda. –