0

在 Access 2010 中,我有两个表“Contact”和“PhoneCalls”。

我为“联系人”创建了此查询,因为我想查看我呼叫联系人的次数。

询问:

SELECT Contact.*, DCount("[ID]","ColdCall"," [ColdCall]![ContactID]   = " & [Contact.ID]) AS Call
FROM Contact

我已经使用以下表达式构建了这个查询:

Call: DCount("[ID]","ColdCall"," [ColdCall]![ContactID]   = " & [Contact.ID])

它工作正常,只是它创建了一个 TEXT 字段而不是 NUMBER 字段。例如,我需要对这个查询进行排序,但我只能按“A 到 Z”排序,而不是“从小到大”排序。

您对我如何解决这个问题有任何想法吗?

4

1 回答 1

2

您可以使用 CInt() 强制调用计数为整数:

SELECT Contact.*, CInt(DCount("[ID]","ColdCall"," [ColdCall]![ContactID]   = " & [Contact.ID])) AS Call
FROM Contact;

另请注意,以这种方式使用 DCount() 效率相当低。如果该方法对您满意,那么现在继续使用它,但如果随着表格的增长它开始陷入困境,请不要感到惊讶。

于 2013-03-11T11:44:24.377 回答