SQL:计算一个表中的不同值和另一个表中的组

时间:2015-05-20 21:02:19

标签: sql ms-access-2007 type-mismatch

这是我第一次来这里。经过长时间的研究,我无法找到解决我(相对简单)问题的方法。

我有两张桌子:

表"产品"有以下数据:

Refresh

表"项目"有以下几行:

cod_product /  cod_franchise
    2       /        1
    2       /        1
    3       /        3

我需要确定每个特许经营权在"项目"中出现的次数(通过其各自的cod_product)。表

因此我运行以下SQL代码:

  id_item   /    cod_product
    1       /        1
    2       /        2
    3       /        2

但是我使用MS Access获得的只是一个" TYPE MISMATCH IN EXPRESSION"错误消息。

有人可以帮帮我吗?

最佳,

1 个答案:

答案 0 :(得分:0)

我已经尝试过您的查询(复制/粘贴代码),但它的工作原理非常完美。

我的猜测是,您的某个表字段设置为与其他字段不同的数据类型。在创建模式下打开每个表,并将所有数据类型更改为数字或文本,无论哪个,只要它们都是相同的。

如果您不知道如何/不想更改数据类型,可以使用此查询:

  

SELECT P.COD_FRANCHISE * 1,COUNT(I.COD_PRODUCT)AS ['QUANTITY'] FROM   产品作为内部加入项目,因为我在P.COD_PRODUCT * 1 = I.COD_PRODUCT * 1   GROUP BY P.COD_FRANCHISE;

随处放置的“* 1”将强制Access更改您的数据类型。