Как вызвать таблицу AVG () в php

foreach($result as $row){

array_push($dataPoints, array("x"=> $row->AUTOINDEX, "y"=> $row->AVG(`VALUE_`)));

}

Это ошибка, когда я использовал AVG (VALUE_)

Я пытался использовать SQL для создания диаграммы на php

foreach($result as $row){

array_push($dataPoints, array("x"=> $row->AUTOINDEX, "y"=> $row->AVG(`VALUE_`)));

}

когда AVG (VALUE_) - ошибка HTTP ERROR 500 Но обычное имя таблицы в базе данных VAULE_ не является ошибкой.

Как я могу это исправить! Я ошибся, потому что использовал AVG ()?

Ошибка 500 широкая. Что за сообщение об ошибке?

Cid 08.01.2019 08:49

Показывает только ошибку 500.

Mys Kongtheang 08.01.2019 08:51

Проверьте журналы, затем

Cid 08.01.2019 08:51

Я не уверен, что VALUE_ следует заключать в обратные кавычки `. Попробуйте цитаты, простые ' или двойные "

Cid 08.01.2019 08:52

Я думаю, что это ошибочно, потому что я использовал AVG () и назвал его в php как обычный столбец ????

Mys Kongtheang 08.01.2019 08:54

Вы говорите здесь об агрегатной функции SQL AVG()? Что ж, вам нужно вызвать это в операторе SQL, а не в PHP ...

misorude 08.01.2019 08:55

Адаптируюсь от этого canvasjs.com/php-charts/chart-data-from-database.

Mys Kongtheang 08.01.2019 08:56

Да, я создал sql, используя AVG (), и мне нужно использовать их для моей диаграммы

Mys Kongtheang 08.01.2019 08:57

попробуйте $ row -> {'AVG (VALUE_)'}

Michael Eugene Yuen 08.01.2019 08:59

Просто дайте столбцу псевдоним по вашему выбору, и тогда вам не придется иметь дело с автоматически созданным более сложным идентификатором столбца, который вы обычно получаете при использовании агрегатных функций.

misorude 08.01.2019 09:02

Я попробовал {'AVG (VALUE_)'}, и это не ошибка, но диаграмма не отображается. TT

Mys Kongtheang 08.01.2019 09:04

@misorude Да я понятия не имею. могу я вас спросить?

Mys Kongtheang 08.01.2019 09:08

Комментарий не отмечен моими обратными кавычками

Michael Eugene Yuen 08.01.2019 09:11
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
13
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы пытаетесь получить доступ к свойству объекта. Таким образом, вы либо назначаете псевдоним временному столбцу.

"SELECT *, AVG(`VALUE_`) as average FROM table_name"

Затем вы можете получить к нему доступ с помощью $ row-> average в своем цикле foreach.

ИЛИ используйте фигурные скобки, чтобы контекст внутри обрабатывался как строка. В противном случае вы пытаетесь вызвать метод из $ row.

$row->{'AVG(`VALUE_`)'}

php не знает, что AVG (VALUE_) - это имя столбца из вашего запроса. php принимает это как метод (функцию) $ row-> doSomething ($ arguments).

Michael Eugene Yuen 08.01.2019 09:24

Другие вопросы по теме