我面临一个奇怪的问题,我在VFP9命令窗口中运行查询,它运行正常。但是VFP7命令中的相同查询却给我带来了语法错误。
查询
SELECT
a.Prov_Site, Office, a.billNum, a.invoicDate, a.TotalCharg, price
FROM
invoices AS a
LEFT JOIN
( SELECT billNum, SUM(price) as Price FROM Items GROUP BY billNum) AS b
ON a.billNum= b.billNumWHERE a.TotalCharg <> b.price
我通过安装了VFP9驱动程序的C#代码运行相同的查询,我的语法异常。
有人可以帮我吗?
谢谢, SACH
答案 0 :(得分:2)
VFP 7肯定不支持派生表,因此该查询在那里不起作用。从C#,您使用ODBC或OLE DB。自VFP 6以来,VFP ODBC驱动程序尚未更新,因此也不支持派生表。
答案 1 :(得分:0)
试试这个:
SELECT a.prov_site, a.office, a.billnum, a.invoicdate, a.totalcharg, b.price
FROM invoices AS a LEFT JOIN
(SELECT billnum, SUM(price) as price FROM items GROUP BY billnum) AS b
ON a.billnum = b.billnum WHERE a.totalcharg <> b.price