我有两张桌子:
设备:e_barcode , e_name, e_Quantity
equipment_booked :e_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 :(得分: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
条款背后的逻辑是什么。