2

首先,我想在 2 个表之间进行比较,tb_wrappertb_summary获取其中tb_wrapper不存在的数据,tb_summary然后保存在$link. 如果我没有得到相同的数据,我想打印结果$link。当我没有得到不同的数据时,我希望它进入另一个进程。

这是代码:

$q2 = mysql_query(" SELECT 
                          a.doc_url 
                    FROM
                          tb_wrapper a
                    LEFT JOIN 
                          tb_summary b
                          ON a.doc_name = b.doc_summ
                    WHERE
                          b.doc_summ IS NULL");

while ($row = mysql_fetch_array($q2)){
    $link = $row['doc_url'];
    if ($link){ 
       include 'next_process.php';
    }
    else {
       include 'blablabla.php';
    }
}

它不起作用。当我没有得到不同的数据或$link没有保存值时。

桌子 :

CREATE TABLE tb1
(`id` int, `doc_name` varchar(100), `doc_url` varchar(50))
}

CREATE TABLE tb2
(`id` int, `doc_summ` varchar(100))
}
4

1 回答 1

0

由于您的表缺少PRIMARY KEYany 或 any other INDEX,因此此查询可能需要一些时间:

SELECT a.doc_url 
FROM tb_wrapper a
WHERE a.id NOT IN ( 
    SELECT tw.id
    FROM tbl_wrapper tw
    LEFT JOIN tb_summary b
        ON tw.doc_name = b.doc_summ )
于 2012-10-13T15:45:07.023 回答