I
card_type
Tisch haben, in denen escard_id
istauto_increment
Schlüssel ist, undcardtpe
istprimary key
. Die andere Tabelle , die ich habe, istactivities
Tabelle. Diecolumns
in Aktivitäten Tabelle sindactivity_id
mitauto_increment
Schlüssel undactivity
Spalte mitprimary key
. Die dritte Tabelle istactual_alldetails
Tabelle. Die Säulen inactual_alldetails
sindid
mitauto_increment
Schlüssel und(emp_code,activity_id,card_id)
Spalte mitcomposite key
. Die vierte Tabelle istemployee
Tabelle und Spalten in dieser Tabelle sindemp_code
mitprimary key
undemp_name
. wie Innen zu tun kommen mit zusammengesetzten Schlüssel
Wenn ich versuche, eine meiner Abfrage auszuführen: -
SELECT i.*,
d.Date,
a.in_time,
a.out_time,
SEC_TO_TIME(SUM(TIME_TO_SEC(a.out_time))-(TIME_TO_SEC(a.in_time))) AS duration,
c.cardtype,
a.wo,
v.activity,
a.quty,
a.wastage,
a.mcusage,
a.actual_wastage
FROM employee_details i
INNER JOIN actual_alldetails a ON i.emp_code=a.emp_code
INNER JOIN attendance_date d ON d.date_id=a.date_id
INNER JOIN card_type c ON c.card_id=a.card_id
INNER JOIN activities v ON v.activity_id=a.activity_id
WHERE d.Date='2016-01-30'
ORDER BY v.activity;
Es zeigt mir Fehler wie:
Mischen von GROUP Säulen (MIN(), MAX(), COUNT(), ...) ohne GROUP Spalten ist ungültig, wenn keine GROUP BY-Klausel vorhanden ist.
Ich verstehe nicht, warum es mir Fehler wie diese zeigen. Liegt es daran, dass ich innere Verbindung mit einem Primärschlüssel und einem zusammengesetzten Schlüssel mache? Wenn meine Vorhersage richtig ist, was ist die richtige Abfrage, um diese zu tun? Bitte helfen Sie mir, dieses Problem zu lösen.