簡體   English   中英

使用新值更新時間戳列-Oracle中現有列的值

[英]Updating timestamp column with new value - value of existing column in oracle

我有一個表,可以說測試具有三列objid,col1(Timestamp)和col2(Number)。 我想用(新值-col2的值)更新col1。

我可以使用下面的查詢來更新單行-

update test set col1 = TO_TIMESTAMP('"+newDate+" 00.00.00.000000000','DD-MM-YYYY HH24: MI:SS:FF') - (select col2 from test where objid = 1) where objid = 1;

但是我在通過使用IN傳遞objid來更新多行時遇到問題。

update test set col1 = TO_TIMESTAMP('"+newDate+" 00.00.00.000000000','DD-MM-YYYY HH24: MI:SS:FF') - (select col2 from test where objid IN (1,2)) where objid IN (1,2);

我沒有任何線索可以完成它。

請幫忙。

提前致謝。

由於兩列都屬於同一表,因此您可以這樣編寫查詢:

update test 
   set col1 = TO_TIMESTAMP('"+newDate+" 00.00.00.000000000','DD-MM-YYYY HH24: MI:SS:FF') - col2
 where objid IN (1,2);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM