Конструкция GROUP BY

Статус
Закрыто для дальнейших ответов.

pingvinchic

Well-Known Member
Регистрация
19.11.2009
Сообщения
81
нужно подсчитать сумму двух столбцов

такой запрос:

Код:
$result = mysql_query( "SELECT msg_workman, SUM(msg_hour) as `wh`,SUM(msg_minute) as `wm`
FROM msg1 WHERE msg_project='$id' GROUP BY msg_workman");
$row = mysql_fetch_array($result);
1. что такое as `wh` и as `wm` ?
2. как вывести эти две суммы?
 

medwoodu

Злобный модер
Регистрация
22.12.2005
Сообщения
1 418
as это определение псевдонима. т.е. если у вас
Код:
SELECT mege_super_dlinnay_peremennaya AS a FROM ....
то в результате будет получен результат с именем поля 'a', это удобно при использовании длинных имен полей и таблиц.

Для получения результата посмотрите
Код:
var_dump($row);
результат должен быть примерно такой:
Код:
array(
'msg_workman'=>'значение',
`wh`=>'сумма msg_hour',
'wm'=>'сумма msg_minute'
);
 

Serg@NT

Well-Known Member
Регистрация
20.02.2010
Сообщения
506
результат должен быть примерно такой:
Код:
array(
'msg_workman'=>'значение',
`wh`=>'сумма msg_hour',
'wm'=>'сумма msg_minute'
);
mysql_fetch_array ещё добавит цифровые ключи столбцов по порядку.

Вывести по одиночке можно соответственно:
Код:
echo $row['msg_workman']; //или $row[0]
echo $row['wh']; //или $row[1]
echo $row['wm']; //или $row[2]
Кстати, если у вас несколько значений, то вывод нужно запихнуть в цикл. Как вариант:
Код:
while($row = mysql_fetch_array($result)){
  [вывод]
}
 
Статус
Закрыто для дальнейших ответов.
Верх Низ