• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL文を教えて下さい)

SQLビュー作成方法とは?

このQ&Aのポイント
  • VB2008、SQL Serverで開発をしています。得意先マスタの全件と、売上テーブルを読み、売上テーブルの商品コードの商品名を商品マスタより取得し、すべての得意先の売上データが存在するわけではありません。この処理をひとつのSQL文にする方法がわかりません。
  • SQLビューの作成方法について教えてください。VB2008とSQL Serverを使用しており、得意先マスタの全件と売上テーブルを関連付け、商品コードと商品名を取得したいです。すべての得意先の売上データが存在しない場合も考慮して、ひとつのSQL文にまとめる方法を教えてください。
  • ACCESS上でクエリを作成し、SQLビューにする方法がわかりません。得意先マスタの全件と売上テーブルを関連付け、商品コードと商品名を取得したいです。すべての得意先の売上データが存在しない場合も考慮して、ひとつのSQL文にまとめる方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

ASによるフィールドの別名を取り除いて みたらどうですか。

nakusa2012
質問者

お礼

回答ありがとうございます。 単純ミスでした。訂正して、思い通りの結果になりました。 今週納品に間に合います。大変助かりました。 本当にありがとうございます。

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

SQL = SQL & " 売上T.N AS 商品コード, " SQL = SQL & " 商品M.B AS 商品コード, " 別名としての商品コードを重複して取り出そうとしていますが。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

変なところ; (1) >商品M 売上T.商品コード = 商品M.商品名 商品M 売上T.商品コード = 商品M.商品コード では? (2) >FROM 売上T LEFT JOIN 商品M 売上T.商品コード = 商品M.商品名 FROM 商品M INNER JOIN 売上T ON 商品M.商品コード = 売上T.商品コード では? (3) 商品名称と商品名の混在 以上を修正して、2のSQL文の JOIN クエリ1 のクエリ1をクエリ1のSQL文に置き換え置き換えたSQL文を()で囲み、 (SELECT 売上T.伝票日付, 売上T・・・・) AS Temp として、2のSQL文の「クエリ1」をTempに書き変える。

nakusa2012
質問者

補足

早速、回答いただき、ありがとうございます。 実際のSQLl文をわかりやすいように、日本語に置き換えた時に、項目名を間違えてしまいました。ご指摘の通りです。  さて、お教え頂いたようにしてみましたが、やはりエラーになります。 (エラーメッセージは、”ODBCドライバは要求されたプロパティをサポートしていません。”) 単純に3つのテーブルを LEFT JOIN したSQLは正常に読めているので、SQL文の間違いしか考えられません。  下記、実際のSQL文です。どうにも困ってしまっています。間違いがおわかりであれば、再度お教え頂きたく、よろしくお願いします。 SQL = "" SQL = SQL & "SELECT " SQL = SQL & " 得意先M.B AS 得意先コード, " SQL = SQL & " 得意先M.C AS 得意先名称, " SQL = SQL & " Temp.* " SQL = SQL & " FROM 得意先M" SQL = SQL & " LEFT JOIN " SQL = SQL & "(" SQL = SQL & "SELECT " SQL = SQL & " 売上T.H AS T1, " SQL = SQL & " 売上T.D AS 伝票日付, " SQL = SQL & " 売上T.N AS 商品コード, " SQL = SQL & " 商品M.B AS 商品コード, " SQL = SQL & " 商品M.C AS 商品名称 " SQL = SQL & " FROM 売上T" SQL = SQL & " LEFT JOIN 商品M" SQL = SQL & " ON 商品M.B = 売上T.N " SQL = SQL & ") AS Temp " SQL = SQL & " ON 得意先M.B = TEMP.T1 " SQL = SQL & ";"

関連するQ&A