如何将两个UPDATE查询合并为一个,不同的WHERE和SET?

I was wondering if it's possible to combine these two queries as they do not work separately (one of the two only works). They are

$addquery = "UPDATE winners SET mem_name='$addname' WHERE mem_name='$deletename'";
$addresult= mysqli_query($connect, $addquery);
$query = "UPDATE winners INNER JOIN members SET winners.mem_id = members.mem_id
                    WHERE winners.mem_name = members.mem_name";
$result = mysqli_query($connect, $query);

Can this be done in just one query? Thank you!!!

I am not saying you should do it, but judging from the flow of the code you provided, this is how you could do it.

UPDATE winners w
SET w.mem_name = '$addname'
, w.mem_id = IFNULL(SELECT m.mem_id 
                    FROM members AS m 
                    WHERE m.mem_name = '$addname' 
                    ORDER BY m.mem_id DESC 
                    LIMIT 1
                   , w.mem_id
                   )
WHERE w.mem_name = '$deletename'
;

Note, the ORDER BY is technically optional; your question does not state whether mem_name is guaranteed unique in members. If it is unique, the order by should not be needed; if it is not, it at least adds some consistency to the expected value retrieved.

If you have control over the database design, I would suggest removing mem_name from winners altogether. It is/would be redundant data if you were managing the relation primarily by mem_id to begin with.