Drei Tische
cats
=============
id
cat_herder_id
size
color
birthday
collars
=============
id
cat_id
diameter
color
material
cat_herders
=============
id
name
age
height
Ich möchte eine Zeile für jeden Katzenhalter, die über einen Meter groß ist, mit einer Zählung der Anzahl der Katzen, die im Februar geboren wurden, die orange mit schwarzen Halsbändern sind, die zu diesem Halter gehören, und eine Zählung aller Katzen, die orange mit blauen Halsbändern sind, die zu jedem Halter gehören, wie würde ich gehen über eine Abfrage dieser Art zu tun.
Ich glaube nicht, dass ich einfach in der where-Anweisung angeben kann, weil meine Zählung nicht zu stimmen scheint, ich gruppiere nach cat_herders.id
EDIT: Weniger bereinigte, weniger abstrahierte Version dessen, was ich bis jetzt habe:
SELECT company.tblusers.first_name, company.tblusers.last_name, company.tblusers.userid, SUM(db.tasks.estimated_nonrecurring+db.tasks.estimated_recurring), COUNT(sugarcrm2.ncr_ncr.id),
SUM(db.batch_log.time_elapsed) FROM company.tblusers
INNER JOIN db.batch_log ON company.tblusers.userid = db.batch_log.userid
INNER JOIN db.tasks ON db.batch_log.batch_id = db.tasks.batch_id
INNER JOIN sugarcrm2.ncr_ncr ON company.tblusers.first_name + " " + company.tblusers.first_name = sugarcrm2.ncr_ncr.employee
WHERE departmentid = 8 AND DATE(db.batch_log.start_time) = DATE(NOW()) GROUP BY userid