SQL の列名の大文字と小文字の区別
次の SQL ステートメントは、列名の大文字と小文字が一致しないため、エラーが発生します。
エラー メッセージ「列 "FK_Numbers_id" が存在しません」は、PostgreSQL がテーブル内で指定された列を見つけることができないことを示します。ただし、テーブル スキーマを確認したところ、名前が少し異なるだけで、列は存在します。
PostgreSQL では、列名は大文字と小文字が区別されます。これは、「FK_Numbers_id」と「fk_numbers_id」が別の列として扱われることを意味します。ただし、テーブル スキーマには、列が存在し、「FK_Numbers_id」という名前が付けられていることが示されています。
したがって、正しい SQL ステートメントは次のようになります。
<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>
SQL ステートメントは、列名を二重引用符で囲むことにより、テーブル スキーマ内の大文字と小文字が区別される列名を明示的に参照します。これによりエラーが解決され、クエリが正常に実行できるようになります。
以上がPostgreSQL の列名の大文字と小文字が区別されるために SQL クエリが失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。