我在MS Access中有一个查询,它在直接从MS Access启动时保存并工作。
我创建了一个php页面,通过按名称调用该查询来输出该信息,但查询不返回任何信息!我的代码应该可以工作,因为Access中还有我调用的其他查询,它们确实返回数据。
- 在Access中启动(双击)查询时有效
- 从PHP
"SELECT * see query below"
键入和执行查询时不返回结果 - 当由PHP
"SELECT * FROM Query1"
的MS Access名称调用时,查询不返回结果 - 当从PHP
"SELECT * FROM Query2"
调用MS Access名称时,同一数据库中的其他查询按预期执行
SELECT *
FROM (SELECT a2.[vendor_oel_yr],
Count(a2.qty) AS eol_qty
FROM (SELECT "wintel" AS Platform,
s.city & "," & s.state AS
[Physical Location],
"" AS
[Special Flag (Project)],
"" AS
[Special Flag (sub location)],
"" AS
[location Floor],
"" AS
[Room Discriptor],
Format(s.unitprce, "currency") AS [Unit Price],
"hp" AS Manufacturer,
t.make_model AS Model,
s.itemnmbr AS [Part Number],
s.qty AS Qty,
s.itemdesc AS Description,
s.sn AS [Serial Number]
,
""
AS [Asset Tag #],
"" AS Environment,
t.computer AS
[Device Name (Naming Standard)],
s.docdate AS [Install Date],
4 AS
[Vendor Useful Life],
"" AS
[Operational Useful Life],
s.docdate + ( 4 * 365 ) AS
[Vendor EOL Date],
"" AS
[Operational EOL Date]
,
Format(s.qty * s.unitprce, "currency") AS
[Purchase Price],
Year(s.docdate + ( 4 * 365 )) AS Vendor_OEL_Yr
FROM sayers_invoice AS s
INNER JOIN tamit_wintel AS t
ON s.sn = t.serial_number
WHERE Len(s.sn) > 0) AS a2
GROUP BY a2.[vendor_oel_yr]) AS a2O;
似乎是复杂的查询造成了这个问题。我必须优化查询,然后它就工作了。