Suporte » Questões avançadas » Comparar tabelas de 2 bancos diferentes

  • Resolvido Marcio Seabra

    (@mscriacoes)


    Olá galera, tenho uma questão aqui que está travando meu cerebro.

    É o seguinte: Tenho 2 bancos de dados distintos (no mesmo host), um é o DB do WP, e o outro o DB de um outro sistema.

    O problema é: Preciso consultar dados da tabela no DB externo (divitae_divitae), porém só exibir dados que já não constem na tabela dentro do wordpress (divitae_newsite).

    Abaixo os códigos:
    Consulta em DB externo

    //Conecta com o banco de dados externo para acessar seus dados
    $newdb = new wpdb('root', '', 'divitae_divitae', 'localhost');
    $newdb->show_errors();
    $q_destaque = sql_query("SELECT l.id_loja, l.id_categoria, l.nome_loja, l.url_loja, l.descricao_loja, l.data_cadastro, l.adulto, concat( i.pasta_imagem, '/', i.nome_imagem ) AS imagem, lc.img_destaque
    						FROM loja l
    						INNER JOIN loja_config lc USING ( id_loja )
    						INNER JOIN imagem i ON i.id_imagem = lc.img_destaque
    						WHERE l.deletado=%s AND l.ativo=%s AND l.adulto=%s
    						ORDER BY l.nome_loja
    						", 'N', 'S', 'N');
    $query = $newdb->get_row($q_destaque);

    Até aqui tudo bem, consigo fazer a consulta e exibir todas as lojas em um while.

    Só que na tabela do WordPress, onde estes dados serão cadastrados, já existem algumas lojas e portanto, só quero exibir na tela do admin as lojas cujas IDs ainda NÃO CONSTAM NA TABELA DO WP.

    Na tabela do wordpress há um campo na tabela que também se chama id_loja, onde a ID das lojas exibidas na consulta acima são cadastradas.

    Como eu faço para exibir na tela somente os dados NÃO CADASTRADOS na tabela do WP?

    na tela de exibição eu utilizo um while

    while($dados_destaque = sql_fetch_array($query)) {
    
    }

  • O tópico ‘Comparar tabelas de 2 bancos diferentes’ está fechado a novas respostas.