2013-08-21 101 views
0

我有兩個表:MySql的計算量

設備e_barcode , e_name, e_Quantity

equipments_bookede_barcode (foreign key to equipments), employee_id

我需要一個查詢來獲取每個設備的數量與設備ID。 是這樣的。

e_barcode, e_available_quantity(not total)

和我寫的查詢只顯示我的可用設備:

SELECT * FROM `equipments` AS a 
HAVING 
a.`e_quantity` > (SELECT COUNT(`equipments_booked`.`e_barcode`) 
FROM `equipments_booked` WHERE `equipments_booked`.`e_barcode`=a.`e_barcode`) 

回答

0

我想你想使用一個連接和聚合:

SELECT e.bar_code, count(eb.e_barcode) as quantity_booked 
FROM equipments e left join 
    equipments_booked eb 
    on e.e_barcode = eb.e_barcode 
GROUP BY e.bar_code; 

我不知道having條款背後的邏輯是什麼。

+0

Gordon Linoff:謝謝Lot.it工作... :) 它的工作。 –