0
我的代碼是在這sqlFiddle。在Oracle 11g數據庫中更新用戶的最新行?
創建表
create table my_table (pk number, created date, user_name varchar2(200), start_date date);
insert into my_table (pk, created,user_name) values (1, sysdate-1, 'bob');
insert into my_table (pk, created,user_name) values (2, sysdate-2, 'frank');
insert into my_table (pk, created,user_name) values (3, sysdate,'bob');
insert into my_table (pk, created,user_name) values (4, sysdate,'frank');
更新:
update my_table
set start_date = sysdate
from my_table
where pk = (select max(pk) from my_table where user_name = 'bob');
SQLFiddle給了我這個錯誤:
ORA-00933: SQL command not properly ended : update my_table set start_date = sysdate from my_table where pk = (select max(pk) from my_table where user_name = 'bob')
但我敢肯定,我有一個分號出現在右地點。
什麼給?我對SQL很陌生,並認爲這會起作用。