в заявлении.
я есть MySQL Query, который выполняется правильно в SequelPro, но не выполняется в PHP Mysqli. Сообщение, которое отображается:
Казнь остановлена. Сообщение: при выполнении оператора sql произошла ошибка: SET @csum: = 0; выберите kunde, sales, (@csum: = @csum + cr.sales) как cumulative_sales FROM (и весь запрос (слишком длинный для его печати)
Я попробовал это несколько раз в Sequel PRo, и это работает. и запрос сохраняется в переменной $ toBeExecuted и распечатывает его, чтобы проверить, правильно ли он и так ли это.
return mysqli_query($this->connectionTargetDB, $toBoExecuted);
Я думаю, что есть проблема с SET @csum: = 0
/ редактировать весь запрос:
SET @csum := 0;
select kunde, sales, (@csum := @csum + cr.sales) as cumulative_sales
FROM (
SELECT j.kunde as kunde,
ROUND(SUM(m.ausgangsrechnungen - m.eingangsrechnungen), 2) as sales
FROM jobs_per_month m,
jobs j,
temporal_dates t
WHERE day(t._date) = 1
AND (t._date BETWEEN date_add(now(), INTERVAL -12 MONTH) and now())
AND m.monat = month(t._date)
AND m.jahr = year(t._date)
AND j.internal_jobnr = m.internal_jobnr
GROUP BY j.kunde
HAVING sales >= 10000
UNION ALL
SELECT concat(COUNT(r.sales), ' Kunde < 10k') as kunde,
ROUND(SUM(r.sales), 2) as sales
FROM (SELECT j.kunde as kunde,
ROUND(SUM(m.ausgangsrechnungen - m.eingangsrechnungen), 2) as sales
FROM jobs_per_month m,
jobs j,
temporal_dates t
WHERE day(t._date) = 1
AND (t._date BETWEEN date_add(now(), INTERVAL -12 MONTH) and now())
AND m.monat = month(t._date)
AND m.jahr = year(t._date)
AND j.internal_jobnr = m.internal_jobnr
GROUP BY j.kunde
HAVING sales < 10000 AND sales > 0) r
ORDER by sales desc) cr