2011-11-12 5 views
0

我々は二つのテーブル、倉庫やクレートMySQLのクエリ - 和複数の倉庫の容量

Warehouse: 
WarehouseID (primary key) 
Location (varchar) 

Crate: 
CrateID (primary key) 
Warehouse (foreign key to a Warehouse record) 
Max_Capacity (int) (the amount of boxes that can be packed into a crate) 

を持っている私はのためのすべての木箱max_capacityの合計を返すクエリを書きたいMySQLデータベースを持っています各倉庫。各倉庫は10かそこらの箱を持っているかもしれません

LOCATION: WAREHOUSE_ID: TOTAL_CAPACITY: 
Shoreline 1    60 
Bellevue  2    120 
Ballard  3    200 

:私は重複したエントリとのトラブルを抱えていると内部結合ので、私が望んでいるものをすることのようなものです。

答えて

0

だけ群:

SELECT 
    warehouse.location, 
    warehouse.warehouseID, 
    SUM(crate.max_capacity) AS total_capacity 
FROM warehouse 
INNER JOIN crate 
    ON crate.warehouseID = warehouse.warehouseID 
GROUP BY 
    warehouse.warehouseID 
0

あなたはこれらの単語のためのMySQLのマニュアルを調べる必要があります。

  • インナーこれらは、アセンブリしたいクエリをお手伝いをすることができます
  • 合計()

によって

  • グループに参加。倉庫によって

  • 1
    select w.location, w.warehouse_id, sum(c.capacity) as total_capacity 
    from warehouse w, crate c 
    where w.warehouse_id = c.warehouse_id 
    group by c.warehouse_id 
    
    (クレートテーブルの外部キーをwarehouseID呼ばれると仮定して)
    関連する問題