为什么下面的查询总是返回零结果?

时间:2013-09-13 20:11:23

标签: ms-access asp-classic ado

以下查询始终返回空计数。有谁知道为什么?

SELECT CTM_Export.[Tracking # Label], Count(CTM_Export.[Tracking # Label]) AS LabelCount
FROM CTM_Export
GROUP BY CTM_Export.[Tracking # Label]
HAVING (((CTM_Export.[Tracking # Label])='TPE RV'))

response.write LabelCount

在CTM_Export表中有三行,其值为“TPE RV”。因此,LabelCount不应为空。但由于某种原因,它总是空的。

2 个答案:

答案 0 :(得分:1)

返回数据源并检查这些值。也许这个查询实际上不返回任何行:

SELECT ctm.*
FROM CTM_Export AS ctm
WHERE ctm.[Tracking # Label]='TPE RV'

您可能会发现[Tracking # Label]值包含意外空格或其他不可见字符。


看到你的一条评论让我想知道是否还有其他事情发生。使用原始GROUP BY查询,将此行添加到ASP:

Response.Write "LabelCount: " & tlRS.Fields("LabelCount").Value

答案 1 :(得分:0)

是否有正在执行查询的对象?看起来这里缺少很多代码。

您应该对另一个字段执行计数,例如rowID。

我还建议你也将“HAVING”改为“WHERE”。