微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-将3个MySQL查询合并为一个

我想做的是拿一张桌子,找出其电子邮件地址为emails.from值的成员的id,然后将其id放在其中.我正在尝试通过使用ID而不是电子邮件地址来提高性能,但是无法完成此任务.

$MysqL = new MysqL();
$MysqL->query('SELECT `from` FROM `emails` ORDER BY `id` ASC' );

while($row = MysqL_fetch_array($MysqL->result)){
    $MysqL2 = new MysqL();
    $MysqL2->query('SELECT `id` FROM `exchange` WHERE `email` = "'.$row['from'].'"');

    $details = MysqL_fetch_assoc($MysqL2->result);


    $MysqL2->query('UPDATE `emails` SET `from` = '.$details['id'].' WHERE `from` = "'.$row['from'].'"');
}

解决方法:

如果我了解您的代码,则可以尝试执行以下操作:

UPDATE     `emails`
INNER JOIN `exchange` ON `exchange`.`email` = `emails`.`from`
SET `emails`.`from` = `exchange`.`id`

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐