我試圖通過將字符串「999」更新多行一列:追加字符在多行中的Oracle SQL字符串
UPDATE integration.ol_orders
SET order_id = ((SELECT order_id
FROM integration.ol_orders
WHERE status = 2) || '999')
WHERE status = 2
,但不管是什麼原因,我不斷收到「ORA-01427:單行子查詢返回多個行提示」的錯誤。
所以,當我重複我的n行,我試圖做的事:
a1 = a1 || '999'
a2 = a2 || '999'
a3 = a3 || '999'
an = an || '999'
任何建議,如何去了解呢?
編輯:改變 '+' 到 '||',仍然沒有運氣
執行您的子查詢('選擇ORDER_ID FROM integration.ol_orders WHERE狀態= 2'),看看有多少行返回。 – mmmmmpie 2015-02-06 18:10:52
@mmmmmpie 14行返回 – antihero989 2015-02-06 18:14:25
Theres你的問題。您正試圖設置1行等於14行+'999'的輸出。 BTW'+'不是你在oracle中連接它的'||'的方式。 – mmmmmpie 2015-02-06 18:15:39