0

3 つのテーブルを接続するクエリを作成しようとしており、このクエリを VBscript で実行したいと考えています。

これは私の作業バージョンです:

 sSQL = "SELECT OPNPOS.FUND, SECRTY.TKR, SECRTY.ISIN, OPNPOS.QTY, OPNPOS.LCL_ACCINC, PRIHST.PRICE / SECRTY.FACTOR AS CENA FROM (OPNPOS INNER JOIN SECRTY ON OPNPOS.TKR = SECRTY.TKR) INNER JOIN PRIHST ON SECRTY.TKR = PRIHST.TKR WHERE OPNPOS.FUND IN " & sFUND & " AND PRIHST.PRCDATE = #" & sDATA & "# ORDER BY OPNPOS.FUND"

OPNPOS テーブルのすべての要素を表示するには、このクエリを変更する必要があるため、変更します

FROM OPNPOS INNER JOIN

に:

FROM OPNPOS LEFT JOIN

しかし、それは私にエラーを与えます。エラー: 結合式はサポートされていません。コード: 80004005

これを回避する方法がいくつかあることは知っていますが、多くの組み合わせを試しましたが、成功しませんでした;/

誰でも私を助けることができますか?

これは私の VBScript の大部分です。

Option Explicit

dim sDATA
sDATA = InputBox("Podaj datę w formacie MM/DD/YYYY.")

dim sPATH
sPATH = "M:\MFWIN\Data"

dim sFUND
sFUND = "('FOM','KRAKOWIA')"

dim sSQL 
sSQL = "SELECT OPNPOS.FUND, SECRTY.TKR, SECRTY.ISIN, OPNPOS.QTY, OPNPOS.LCL_ACCINC, PRIHST.PRICE / SECRTY.FACTOR AS CENA FROM (OPNPOS INNER JOIN SECRTY ON OPNPOS.TKR = SECRTY.TKR) INNER JOIN PRIHST ON SECRTY.TKR = PRIHST.TKR WHERE OPNPOS.FUND IN " & sFUND & " AND PRIHST.PRCDATE = #" & sDATA & "# ORDER BY OPNPOS.FUND"


dim conn, rs

Set conn = createobject("adodb.connection") 
Set rs = createobject("adodb.recordset") 
conn.Open "Driver={Microsoft dBASE Driver (*.dbf)};SourceType=DBF;Dbq="&sPATH 
rs.Open sSQL,conn
4

1 に答える 1

0

私はあなたが言う必要があるからだと思います:

Left Outer Join 

ただの代わりに

 Left Join
于 2013-01-28T15:26:32.183 に答える