首頁 > 資料庫 > mysql教程 > 為什麼我的 PostgreSQL LEFT JOIN 失敗並出現'列不存在”錯誤?

為什麼我的 PostgreSQL LEFT JOIN 失敗並出現'列不存在”錯誤?

Patricia Arquette
發布: 2025-01-13 09:08:43
原創
310 人瀏覽過

Why Does My PostgreSQL LEFT JOIN Fail with a

PostgreSQL LEFT JOIN 錯誤故障排除:區分大小寫與列名稱

使用 LEFT JOIN 執行 SQL 查詢有時會導致令人沮喪的「列...不存在」錯誤。這通常源自於引用列名的方式不一致。

這個範例突顯了一個常見的陷阱:PostgreSQL 中的大小寫敏感度。 main_sim 表包含一個名為 FK_Numbers_id 的外鍵列。 雖然表定義 (d main_sim) 確認其存在,但查詢失敗,因為列名大小寫不一致。 查詢使用 FK_Numbers_id(大寫),而資料庫將其儲存為 fk_numbers_id(小寫)。

PostgreSQL 的大小寫敏感度在這裡至關重要。 如果使用雙引號列名建立表格(按照文件中的建議),則所有列名都嚴格區分大小寫。 這表示您必須在查詢中使用確切的大小寫 - 包括雙引號。

解:

修正後的查詢使用雙引號明確指定列名的大小寫:

<code class="language-sql">SELECT sim.id AS idsim, 
       num.id AS idnum 
FROM main_sim sim 
LEFT JOIN main_number num ON ("FK_Numbers_id" = num.id);</code>
登入後複製

此修改可確保引用正確的列,解決「列不存在」錯誤並允許 LEFT JOIN 成功執行。 請記住,在使用 PostgreSQL 時,一致且精確的大小寫至關重要,特別是在處理雙引號識別碼時。

以上是為什麼我的 PostgreSQL LEFT JOIN 失敗並出現'列不存在”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板