Sql查询或Microsoft访问查询设计以下列方式显示数据

时间:2016-08-04 13:15:24

标签: sql ms-access query-designer

我正在尝试在Microsoft-access中设计一个查询,该查询应以下列方式显示数据:

Car Make             Black                             White                          Red
              Total  2-door  4-door           Total 2-door  4-door            Total 2-door  4-door  
    ---------------------------------------------------------------------------------------------------


Honda          4        2      2               3      1      2                  4      3      1
Toyota         3        1      2               5      3      2                  6      1      5     
Ford           2        0      2               0      0      0                  1      0      1

在Ms-Access查询设计器中,我无法添加多个具有不同条件的字段(对于.eg白色与黑色)。如果我尝试,它在数据表视图中没有给我任何东西(好像它试图找到一辆白色和黑色的普通汽车)。请告诉我一个我可以使用的SQL查询。

编辑1

Car Table:
 -CarMake "Short text"
 -Color "Short text"
 -Door "Short text" (2-door or 4-door)

编辑2

这就是我所说的。如何在这里添加更多字段,以及.eg white的不同标准: enter image description here

1 个答案:

答案 0 :(得分:1)

两个建议 -

首先,你可以连接颜色&将样式转换为一个变量并在交叉表查询中使用它 - 但您不会获得颜色的小计。

其次,您可以在每列中使用iif语句来准确定义您想要的内容。第1列将是总和(iif(颜色="黑色",值,0))。第2列将是总和(iif(颜色="黑"和模型=" 2门",值,0))。等等。不像第一个选项那么简单,但您将获得所需的列。

    SELECT Car.CarMake, Sum(IIf([color]="black",1,0)) AS BlackTotal, Sum(IIf([color]="black" And [door]="2-door",1,0)) AS Black_2D
FROM Car
GROUP BY Car.CarMake;