您的位置:首页 > 其它

原来update可以这样写!

2006-03-06 18:18 851 查看
1.今天在csdn上看到网友的提问:http://community.csdn.net/Expert/topic/4595/4595522.xml?temp=.366543

其中有一个update写法如下:update (select d.id as did, d.next as dnext, d.message as dmessage, s.id as sid, s.next as snext, s.message as smessage from destination d, dbmsglin s where d.next= s.id) set did=sid,dnext=snext, dmessage=dmessage||smessage

没有见过这样的update写法,故测试了一下:

Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0

SQL> SELECT * FROM test0302;

TESTCOL
--------------------------------------------------
xxx
xxx
xxx
xxx
xxx
xxx

6 rows selected

SQL> UPDATE (SELECT * FROM test0302) SET testcol='111';

6 rows updated

SQL> commit;

Commit complete

SQL> SELECT * FROM test0302;

TESTCOL
--------------------------------------------------
111
111
111
111
111
111

6 rows selected

SQL>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: