我遇到这种情况:
表A
|id|cgid|description|
---------------------
|00|0002|some text 1|
|01|0001|some text 2|
|02|0002|some text 3|
|03|0003|some text 4|
|04|0005|some text 5|
和表B
|a_id|cpid|
-----------
| 00| 010|
| 00| 312|
| 00| 040|
| 01| 020|
| 01| 312|
| 01| 030|
| 02| 210|
| 02| 312|
| 02| 130|
a_id
是表A id
的加入列。
现在,我需要将表格B中的所有行cpid=312
更改为250
,但仅限于表A is 0002
的cgid。
我可以使用以下命令选择所有这些条目:
SELECT *
FROM A
JOIN B
ON A.id = B.a_id
WHERE A.cgid LIKE '0002'
AND B.cpid = 312
任何帮助或想法都会非常好。
答案 0 :(得分:1)
使用INNER JOIN尝试此更新。请参阅Here
UPDATE B
SET B.cpid = 250
FROM A
WHERE A.id = B.a_id AND A.cgid LIKE '0002'
AND B.cpid = 312