能否用单条SQL语句通过request_id关联更新details表的price字段?
可以实现,单条SQL语句就能完成需求
当然没问题啦!咱们可以通过子查询关联两张表,一次性完成更新操作。具体思路是:先从request表中根据给定的request_id(1819AM002)找到对应的id值,再用这个值匹配details表中的request_id字段,最后把目标price更新为321。
对应的SQL语句如下:
UPDATE details SET price = 321 WHERE request_id = ( SELECT id FROM request WHERE request_id = '1819AM002' );
补充说明
- 如果
request表中request_id是唯一约束(从示例数据来看应该是),用=完全没问题;如果存在多个匹配的id,可以把=换成IN来适配多场景。 - 这条语句会精准定位到
details表中与目标request_id关联的所有记录,统一更新它们的price字段。
内容的提问来源于stack exchange,提问作者user3386779
相关产品推荐
相关产品推荐

