2017-06-02 44 views
1

我試圖更新表以從歷史時間的當前狀態列出YYYY-MM-DD。這裏是我的嘗試:ORA-01427:從曆元時間轉換時,單行子查詢返回多個行

UPDATE Ratings 
SET Timestamps = (
SELECT to_char(to_date('1970-01-01','YYYY-MM-DD') + 
numtodsinterval(timestamps,'SECOND'),'YYYY-MM-DD') 
FROM Ratings); 

但我不斷收到以下錯誤:

SQL Error: ORA-01427: single-row subquery returns more than one row 

我的錯誤讀了,但我不明白,爲什麼我收到它在這種情況下, 。任何提示都非常感謝!

回答

2

你並不需要一個子查詢:

UPDATE Ratings 
    SET Timestamps = to_char(to_date('1970-01-01', 'YYYY-MM-DD') + numtodsinterval(timestamps, 'SECOND'), 
          'YYYY-MM-DD') 

更新是所有領域中單列。

+0

UGH!我怎麼錯過這樣一個簡單的解決方案?謝謝。 – Polyphase29