Я не очень опытный с SQL в целом, и мне интересно, как совместить эти два отдельных строк обновления, используя те же переменные:Как обновить разные строки из двух столбцов переменными, которые представляют собой идентификатор другой строки с использованием mysqli и PHP?
$queryA = 'UPDATE table SET redirectsToId ='.$redirectId.' WHERE id='.$id;
$queryB = 'UPDATE table SET redirectFromId ='.$id.' WHERE id='.$redirectId;
Заранее спасибо за любые предложения.
EDIT: Что является наиболее эффективным способом сделать это в целом?
Спасибо! Ваш ответ очень близок к тому, что я пробовал в соответствии с другим решением SO и неправильно думал, что он не работает (но, в конце концов, это так). "$ query = 'UPDATE table SET redirectsToId = CASE id WHEN'. $ Id. ' THEN '. $ RedirectId.' ELSE redirectsToId END, redirectFromId = CASE id WHEN '. $ RedirectId.' THEN '. $ Id.' ELSE redirectFromId END WHERE id in ('. $ RedirectId.', '. $ Id.') '; " Есть ли разница во внутренней обработке, когда я использую «CASE id WHEN $ id» вместо «CASE WHEN id = $ id», как вы предложили? Как перенести два оператора в одну транзакцию? – Guitho