繁体   English   中英

连接三个表的查询所需的VBScript / SQL帮助

[英]VBScript / SQL help needed with query that joins three tables

我正在尝试建立一个将连接三个表的查询,并且我想通过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

我认为这是因为您需要说:

Left Outer Join 

不只是

 Left Join

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM