为了账号安全,请及时绑定邮箱和手机立即绑定

如何進行數據表與數據表之間的關聯性更新?

如何進行數據表與數據表之間的關聯性更新?

PHP
翻过高山走不出你 2019-03-08 15:16:19
SQL $rs = $do->query( "SELECT t.name as name, tr.object_id as object_id FROM wp_terms as t JOIN wp_term_relationships as tr ON tr.term_taxonomy_id = t.term_id JOIN blog as b ON b.url = tr.object_id " ); UPDATE while ($r = mysqli_fetch_array($rs)){ $key = ''; $key .= $r['name']; $do->query( "UPDATE `blog` SET `tags` = '{$key}' WHERE url = '{$r['object_id']}' " ); } 根據數據表 t 和 tr 利用 tr.object_id 去 t 找對應的 t.name 數據庫結構:object_id / name 目的是我要更新到 數據表 blog 的 tags 字段中,並利用 , 間隔。而 tr.object_id 也等於是 b.url blog as burl / tags 例如13421 這篇 blog,我想將他的所有 name 都丟到 b.tags 中,用 , 間隔 但現在發生的問題是,永遠都是最後一個被更新進去 b.tags !假設這篇 blog 找到了 a,b,c,d,e, ,當丟進去 b.tags 的時候就只有 e,這是咋了?
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

你的while,每执行一次都有将$key置空并连接上$r['name'],并且每次while都有UPDATE

你要把$key=''提到循环外。

我不知道你是怎么打算的的,照你的代码来看,你如果是a,b,c,d,e五个,就会更新五次为a,a,b,a,b,c,a,b,c,d,a,b,c,d,e,。如果你只想更新一次,你的UPDATE也要提到循环外

查看完整回答
反对 回复 2019-03-18
  • 1 回答
  • 0 关注
  • 270 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信