ホームページ > データベース > mysql チュートリアル > SQL クエリの「あいまいな列名」エラーを解決するにはどうすればよいですか?

SQL クエリの「あいまいな列名」エラーを解決するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-03 05:36:44
オリジナル
574 人が閲覧しました

How to Resolve

SQL クエリ内のあいまいな列名: InvoiceID の問題の解決

複数のクエリから重複した名前を持つ列にアクセスしようとすると、SQL クエリで「あいまいな列名」というエラー メッセージが表示されます。結合されたテーブル。このあいまいさを解決するには、列が選択されているテーブルを指定することが重要です。

指定されたクエリでは、Invoices テーブルと InvoiceLineItems テーブルの両方に存在する InvoiceID 列でエラーが発生します。これを解決するには、クエリを次のように変更します。

SELECT VendorName, Invoices.InvoiceID, InvoiceSequence, InvoiceLineItemAmount
FROM Vendors 
JOIN Invoices ON (Vendors.VendorID = Invoices.VendorID)
JOIN InvoiceLineItems ON (Invoices.InvoiceID = InvoiceLineItems.InvoiceID)
WHERE Invoices.InvoiceID IN
    (SELECT InvoiceSequence FROM InvoiceLineItems WHERE InvoiceSequence > 1)
ORDER BY VendorName, Invoices.InvoiceID, InvoiceSequence, InvoiceLineItemAmount
ログイン後にコピー

「InvoiceID」の前に「Invoices」テーブル接頭辞を指定することで、クエリは列が Invoices テーブルから取得される必要があることを明示的に示します。これによりあいまいさが解決され、SQL Server Management Studio (SSMS) が VendorID 列を正しく取得して表示できるようになります。

複数のテーブルからデータをクエリするときにこのエラーを回避するには、すべてのあいまいな列にテーブル プレフィックスを指定することを忘れないでください。

以上がSQL クエリの「あいまいな列名」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート