hj yuiyui
02/24/2022, 1:03 PMexport async function getUserEventsQuery(website_id, start_at, end_at, day, monthClean, weekClean, yearClean) {
return runQuery(
prisma.$queryRaw`
SELECT g.groupevent_id, g.groupevent_name, g.objectif, g.periode_objectif, g.event_type, g.event_value, COUNT(e.groupevent_id) AS resultat,
CASE g.periode_objectif
WHEN 'Jour' THEN ((COUNT(e.groupevent_id) / ${day}) * 100 /g.objectif)
WHEN 'Mois' THEN ((COUNT(e.groupevent_id) /${monthClean}) *100/g.objectif)
WHEN 'Semaine' THEN ((COUNT(e.groupevent_id) /${weekClean}) *100/g.objectif)
WHEN 'Année' THEN ((COUNT(e.groupevent_id) /${yearClean}) *100/g.objectif)
END as rate
FROM groupevent as g
LEFT JOIN event e
ON g.groupevent_id = e.groupevent_id
AND e.created_at between ${start_at} AND ${end_at}
WHERE g.website_id=${website_id}
GROUP by g.groupevent_id
ORDER BY resultat DESC ;
`,
);
and it returns me Invalid prisma.queryRaw()
invocation: Raw query failed. Code: 22P03
. Message: db error: ERROR: incorrect binary data format in bind parameter 2
what does it means ? dayClean, monthClean are defined h`ere const numberOfDays = endDate - startDate`
const day = Math.ceil(numberOfDays / 86400000)
const week = numberOfDays / 604800000
const weekClean = parseFloat(week.toFixed(3))
const month = numberOfDays / 2592000000
const monthClean = parseFloat(month.toFixed(3))
const year = numberOfDays / 31556952000
const yearClean = parseFloat(year.toFixed(3))
const events = await getUserEventsQuery(parseInt(website_id), startDate, endDate, day, weekClean, monthClean, yearClean);
I'm stuck hard for like 2h on this shit, i dont see why its incorrect data (monthClean etc are type number)