[英]Port MySQL query to PostgreSQL
我正在將MySQL數據庫遷移到PostgreSQL。 將數據庫連接到我的Python腳本時,出現一些語法錯誤。 因此,您能否將此MySQL查詢轉換為PostgreSQL:
select ifnull((select ifnull(run_id,0) from searchbank order by run_id desc limit 0,1),0)
Postgres不支持ifnull:
select coalesce((select coalesce(run_id,0)
from searchbank
order by run_id desc limit 0,1),0
)
您可能會發現此版本稍微更清晰一些:
select coalesce(max(run_id), 0)
from searchbank
更簡單:
SELECT COALESCE((SELECT max(run_id) FROM searchbank), 0);
這樣的查詢的唯一點是,如果searchbank
沒有行,則返回0
而不是不返回行。
刪除外部SELECT
(例如@Gordon演示)將取消該效果,並且完全是錯誤的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.