1
我有三个表:MySQL的连接查询的三个表
asset_details
------------------------------
asset_no asset_type_id
------------------------------
AS1 id1
AS2 id2
AS3 id1
AS4 id3
AS5 id1
--------------------------------
asset_customer_mapping
--------------------------------
asset_no customer_site_id
--------------------------------
AS1 site1
AS2 site1
AS3 site2
AS4 site4
AS5 site1
asset_type_mst
-------------------------------
asset_type_id asset_type_name
-------------------------------
id1 Desktop
id2 Laptop
id3 Printer
id4 Plotter
id5 Router
现在我需要从MySQL以下结果:
SiteName | Desktop | Laptop | Printer | Plotter | Router | Total
-----------------------------------------------------------------
site1 | 2 | 1 | 0 | 0 | 0 | 3
site2 | 1 | 0 | 0 | 0 | 0 | 1
site3 | 0 | 0 | 0 | 0 | 0 | 0
site4 | 0 | 0 | 1 | 0 | 0 | 1
site5 | 0 | 0 | 0 | 0 | 0 | 0
----------------------------------------------------------------
Total | 3 | 1 | 1 | 0 | 0 | 5
我已经wriiten下面的查询组customer_site_ids
select b.customer_site_id,count(*) from asset_details a,asset_customer_mapping b,asset_type_mst c
where a.asset_no=b.asset_no and a.asset_type_id=c.asset_type_id
group by b.customer_site_id;
但我无法获得类型方面的分离以获得所需的结果。任何帮助,高度赞赏。由于
asset_type_mst中只有5个值?或者你希望这是虚拟的? – amow 2015-03-19 06:42:02
asset_type_mst中会有5个以上的值,但它会被修复。 – 2015-03-19 07:16:13