Mysql更新加入?
目前我正在像这样更新我的不同表Mysql更新加入?,mysql,Mysql,目前我正在像这样更新我的不同表 $q = $dbc -> prepare("UPDATE boardposts SET lastPosterID = ?, postOrder = NOW() WHERE postID = ?"); $q -> execute(array($user['id'], $_GET['view'])); $q = $dbc -> prepare("UPDATE accounts SET msgBoardPosts = msgBoardPosts+1 W
$q = $dbc -> prepare("UPDATE boardposts SET lastPosterID = ?, postOrder = NOW() WHERE postID = ?");
$q -> execute(array($user['id'], $_GET['view']));
$q = $dbc -> prepare("UPDATE accounts SET msgBoardPosts = msgBoardPosts+1 WHERE id = ?");
$q -> execute(array($user['id']));
是否可以将这些更新放在一个查询中?是的,这是可能的,类似于:
UPDATE boardposts AS bs
left join accounts AS a on bs.AccountId = bs.lastPosterId
set bs.lastPosterId = ?, bs.postOrder = NOW(),
a.msgBoardPosts = msBoardPosts + 1
WHERE bs.postId = ?,
a.id = ?
我现在不知道这两个表的结构,但这是基本思想,请参见以下语法:
更新[低优先级][忽略]表参考集。。。。
table_references子句列出了联接中涉及的表。描述了它的语法
是的,这是可能的,比如:
UPDATE boardposts AS bs
left join accounts AS a on bs.AccountId = bs.lastPosterId
set bs.lastPosterId = ?, bs.postOrder = NOW(),
a.msgBoardPosts = msBoardPosts + 1
WHERE bs.postId = ?,
a.id = ?
我现在不知道这两个表的结构,但这是基本思想,请参见以下语法:
更新[低优先级][忽略]表参考集。。。。
table_references子句列出了联接中涉及的表。描述了它的语法
谢谢,我将实现这一点,我已经使用了2个查询,有时甚至3个,看起来我有一些编码要做!谢谢,我将实现这一点,我已经使用了2个查询,有时甚至3个,看起来我有一些编码要做!