PostgreSQL update set from 兩表聯合更新,注意與其它數據庫更新語法有差別


  最近用PostgreSql數據庫進行表關聯更新時,發現與之前用的Sql Server 和My Sql語法有很大差別,稍微不注意,很容易出錯。

  PostgreSql表更新時,兩個表只允許一個表起別名,一般是被更新的表不起別名,查詢的表起別名

  正確的寫法如下

SELECT * from pro.book;
SELECT * from pro.book_detail;

UPDATE pro.book_detail     
set  book_name=tab1.book_name
from pro.book  tab1     
where  book_id=tab1."id" and  tab1.book_name!='';

  錯誤寫法如下


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM