更新一列,其中同一表中的另一列等于另一个表中的列

时间:2016-09-15 10:14:06

标签: sql

我有一个Query,用于从一个表中检索数据,其中一列等于一个特定值,一列等于另一个表中的列。

像这样:

SELECT a.IdOrdre, b.FR_Ordre 
FROM Ordre a 
INNER JOIN OrdreKategori b ON a.IdOrdre=b.FR_Ordre 
WHERE b.FR_Kategori=57

我现在想要将列FR_Kategori更新为除57之外的其他值。如何构建UPDATE查询以实现此目的?

1 个答案:

答案 0 :(得分:0)

由于您没有标记DBMS,并且每个都有UPDATE..JOIN的不同语法,因此这是一个ANSI-SQL答案:

UPDATE OrdreKategori t
SET t.fr_kategori = Other_Val
WHERE EXISTS(SELECT 1 FROM Ordre s
             where s.IdOrdre=t.FR_Ordre)
  AND t.fr_kategori = 57
相关问题