1

我有 2 张桌子:

1.  Table Master(Vehicle,Vehicle_Color) :

Vehicle      Vehicle_Color
---------------------------
Car          Black
Car          Yellow
Car          White   
Car          Orange
motorcyle    Black
motorcyle    Yellow
motorcyle    White
motorcyle    Orange

2.  Table Data(Name,Vehicle,Vehicle_Color)  :

Name    Vehicle     Vehicle_Color
-----------------------------------
 Ony    motorcycle  white
Galih   motorcycle  white
Zening  motorcycle  black
 Lia    motorcycle  yellow
 Tika   motorcycle  yellow
Fredy   car         black
Kenzy   car         white
Arka    car         white
Nugraha car         white

我想选择车辆,车辆颜色并计算车辆数量和颜色

 query :

 select vehicle,vehicle_color,(.....) as number 
 from Master left join data on ....

像这样的结果

Vehicle      Vehicle_Color    Number
--------------------------------------
Car          Black               1
Car          Yellow              0
Car          White               3
Car          Orange              0
motorcyle    Black               1
motorcyle    Yellow              2
motorcyle    White               2
motorcyle    Orange              0

有什么建议,创建查询?Tq..

4

1 回答 1

2

您需要通过列连接两个表:vehiclevehicle_color使用LEFT JOIN因此表上的所有记录master将显示在结果列表中。

SELECT  a.vehicle,
        a.vehicle_color,
        COUNT(b.vehicle) Number
FROM    master a
        LEFT JOIN data b
            ON a.vehicle = b.vehicle AND
                a.vehicle_color = b.vehicle_color
GROUP   BY a.vehicle,
           a.vehicle_color
于 2013-09-18T13:42:05.453 回答