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

Copiar dados de uma tabela para outra com condição específica


Seu LEFT JOIN com a condição consignment.id >id1 está quase criando um produto catesiano. O que você provavelmente quer é inserir apenas linhas com um id maior da tabela de origem do que o id1 mais alto na tabela de destino. Você deve usar um SELECT MAX(id) subconsulta em vez disso:
SELECT [..]
FROM  `eamglo5_singaporelive`.`consignment` 
WHERE `eamglo5_singaporelive`.`consignment`.`processed`=1 
  and `eamglo5_singaporelive`.`consignment`.date_booked>'2018-07-17'
  and `eamglo5_singaporelive`.`consignment`.id > (
     SELECT MAX(id1) FROM eamglo5_billingsystem.`consignment`
  )