none
Delete com Select Sub Consulta. RRS feed

  • Pergunta

  • <object height="0" id="79ca6b79-3bd9-9bb2-b9db-f894a8b29a99" type="application/gas-events-abn" width="0"></object>

    Pessoal, basicamente eu preciso deletar o resultado de uma consulta SELECT que fiz para comparar se uma tabela esta contida em uma outra tabela usando o telefone do cliente.

    Quanto ao SELECT, esta funcionando sem problemas, me retorna 5500 clientes que preciso deletar da BASE. porem nao estou conseguindo. ja tentei usar o WHERE IN mas nao deixou, me fala que tenho que usar o EXISTS e quando usao e EXISTS ele nao funciona, fiz o EXISTS com o begin e rollback tran e ele deletou toda a minha tabela.

    SELECT cc_procon.procon_numero, pv_clientestelefones.tel_ddd + pv_clientestelefones.tel_numero AS numero, pv_clientestelefones.cli_ID, 
                   pv_clientes.Cli_estrategiaid
    FROM  cc_procon INNER JOIN
                   pv_clientestelefones ON cc_procon.procon_numero = pv_clientestelefones.tel_ddd + pv_clientestelefones.tel_numero INNER JOIN
                   pv_clientes ON pv_clientestelefones.cli_ID = pv_clientes.cli_ID
    WHERE (pv_clientes.Cli_estrategiaid IS NOT NULL)

    Tente usar o codigo abaixo para DELETE

    delete from Tabela1 where ID IN

    (

    consulta select

    )

    e também tentei

    delete from Tabela1 where exists

    (

    consulta select[

    )

    quarta-feira, 31 de julho de 2013 00:14

Todas as Respostas

  • Boa noite,

    Considerando que a coluna cli_ID da tabela pv_clientes da sua query retorna os IDs a serem excluidos, experimente mais ou menos dessa forma:

    delete from Tabela1
    where ID in
        (SELECT pv_clientes.cli_ID
         FROM cc_procon 
         INNER JOIN pv_clientestelefones 
             ON cc_procon.procon_numero = pv_clientestelefones.tel_ddd + pv_clientestelefones.tel_numero 
         INNER JOIN pv_clientes 
             ON pv_clientestelefones.cli_ID = pv_clientes.cli_ID
         WHERE pv_clientes.Cli_estrategiaid IS NOT NULL)

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 31 de julho de 2013 01:12
  • Deleted
    quarta-feira, 31 de julho de 2013 01:21