PHP中的MS Access查询不返回任何结果


MS Access query in PHP returns no results

我在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;  

似乎是复杂的查询造成了这个问题。我必须优化查询,然后它就工作了。