以前我們在寫update的時候往往是使用 update tablename set columnname = value這樣的簡單語法,而今天遇到一個需求,根據一張表中的數據來更新另外一張表中的某些字段值,比如有個A表和B表,A中有字段id,name,email,phone,cno,這里的cno也是唯一的,B表中有id,othercloumn,email,phone,cno,這時候想通過B中的email和phone值來更新A中的email和phone值。我們可以使用一下語句實現這個功能:
update A, B set
A.email= B.email, A.phone= B.phone
where A.cno=B.cno
Oracle中可以如下方式實現:
update A set
(email, phone) = (select B.email, B.phone where B.cno= A.cno)
posted on 2009-07-31 22:14
周銳 閱讀(2253)
評論(3) 編輯 收藏 所屬分類:
MySQL 、
Oracle