2017-05-01 38 views
-1

語法更新的表的表更新SQL值爲:如何不使用WHERE條件

UPDATE country 
SET country_name = 'america' 
WHERE condition; 

例如: 我有3列的國家表:洲,COUNTRY_ID和COUNTRY_NAME。 在continent和country_id中,所有值尚未完成且其stil設置爲null(值設置爲varchar(256)) 在country_name的列中我有澳大利亞,美國,日本,加拿大。

我如何更新美國而不使用WHERE條件美國?

+0

答案是,你可能沒有。什麼是防止您在更新時使用'WHERE'子句?你正在使用哪個數據庫? –

+0

這是不可能的。 – Jens

+0

@Jens我們可以使用一個技巧,例如定義一個應用「WHERE」限制的CTE,然後盲目更新該CTE。但這可能超出了OP的範圍。 –

回答

1

如果你不能使用where對某種理論的運動,你可以使用case

update country 
set  country_name = case 
         when country_name = 'usa' then 'america' 
         else country_name 
         end 

這將更新每一行,但它只會改變值「USA」 。

1

我從您的意見中瞭解到,您可以使用where但不能使用country_id字段,因此可能這是您所需要的。

UPDATE country 
SET country_name = 'america' 
WHERE country_name = 'usa';