UPDATE Pieces
SET price = 42
WHERE manufacturer_id = (
SELECT id
FROM Manufacturers
WHERE Name = 'FooBar Inc.'
)
first(id)
吗? - Sergio在SQLite中,UPDATE语句中没有JOIN功能。您唯一的选择是使用相关子查询:
UPDATE pieces
SET price = (SELECT SUM(price)
FROM manufacturers
WHERE pieces.manufacture_id = manufacturers.id)
WHERE manufacture_id in (SELECT id
FROM manufacturers
WHERE name IN ('boo', 'foo'));
这不是很有效率,但你可以根据自己的需求进行调整。