2016-10-27 73 views
-1

我在Oracle DB命名Person与下列的表:如何根据查询结果为oracle中的列设置值?

- ID 
- Name 
- hasPaid 
- sendProduct 

我想修改sendProduct列的当前值是'Yes'为具有的'yes'

一个 hasPaid值的任何行
select * from Person where hasPaid = 'Yes'; 

我已经写了上面的查询来获取hasPaid值为'是'的所有行,但是我不确定如何使用此设置hasPaid列?

+0

你需要更新表或简单地得到一个select语句的值,而无需修改数据? – Aleksej

+0

不,我想修改表中的现有数据,谢谢 – java123999

+3

这实际上不是您应该在stackoverflow上提出的问题的级别 - 获取SQL手册并阅读它。 (不,我没有downvote你) – Pancho

回答

1

OldProgrammer的答案是正确的。
但是如果你只想要更新需要更新的行,你也可以使用:

UPDATE Person 
SET sendProduct = 'Yes' 
WHERE sendProduct != 'Yes' 
AND hasPaid = 'Yes'; 
1
UPDATE Person 
SET sendProduct = 'Yes' 
where hasPaid = 'Yes'; 

也许读取SQL Tutorial?这是一个非常基本的DML(数据操作语言)概念。

+0

唯一和最终答案 – am2

相关问题