wie kann ich zeigen alle Wochen (52) in aktuellen JahreSQL zeigt alle Wochen (52) im laufenden Jahr
ich diese Abfrage gemacht haben:
SELECT
COALESCE(IF(DATE_FORMAT(q.date_add, '%Y-%u') IS NULL,
(DATE_FORMAT(q.date_add, '%Y-%u')),
DATE_FORMAT(q.date_add, '%Y WEEK %u'))) AS CurrentDate,
COALESCE(IF(SUM(q.totalExcl) IS NULL,
0,
SUM(q.totalExcl))) AS total
FROM
expoled.ps_oxoquotation_quotationstate_history h
RIGHT JOIN
expoled.ps_oxoquotation_quotation q ON h.idQuotation = q.idQuotation
LEFT JOIN
expoled.ps_employee e ON h.idEmployee = e.id_employee
INNER JOIN
expoled.ps_sv_employee_meta m ON h.idEmployee = m.id_employee
WHERE
h.idEmployee = 39
AND YEAR(q.date_add) = YEAR(UTC_TIMESTAMP())
AND h.idQuotationState = 3
GROUP BY IFNULL(CurrentDate, '')
Ich glaube, ich brauche zu tun etwas in hier:
SELECT
IFNULL(DATE_FORMAT(q.date_add, '%Y WEEK %u'), 0) AS CurrentDate,
IFNULL(SUM(q.totalExcl),0) AS total
FROM
ich habe versucht haben IFNULL zu setzen, aber das gab mir das gleiche Ergebnis
das ist, was jetzt ich erhalte.
Es zeigt die aktuelle Woche 5 bis Woche 16. Es gibt auch nichts in Woche 1 bis Woche 4, weil es keine Daten in ist und es braucht es nur eine einfache Null (0)
Also zu zeigen, was ich will, ist es von Woche 1 bis Woche Standard zu zeigen, braucht 52 und wenn keine Daten nur 0
Die Abfrage jetzt arbeitet, ist ohne Fehler.
Wochen ist immer eine interessante. Über welche Wochen sprechen Sie? Da Sie 52 sagten, nehme ich an, Sie meinen ISO-Wochen? – Jens
Ja ISO Wochen voll 52 Wochen – Deniz
IFNULL (DATE_FORMAT (q.date_add, '% Y WEEK% u')), 0) benutze diese – Jenish