Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> странно. сумма считается по разному 
:(
    Опции темы
Areostar
Дата 30.6.2015, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: -1
Всего: -2



имеется такая конструкция

Первый вариант - пичатает весь список
Второй вариант - с положительным балансом
Третий - с отрицательным

Но два пользователя попадают и во второй и в третий список!!

в чём я ошибся!??


Код


 if($rq->dir == 0)
                {
                    $sql = "SELECT `UserID`, `BrandID`, `LoginEmail`, `LoginID`, initialBalance, actualBalance, round((actualBalance - initialBalance), 2) AS Total, `VIPGroup` FROM brandaccounts GROUP BY UserID";
                }
                else if($rq->dir == 1)
                {
                    $sql = "SELECT `UserID`, `BrandID`, `LoginEmail`, `LoginID`, initialBalance, actualBalance, round((actualBalance - initialBalance), 2) AS Total, `VIPGroup` FROM brandaccounts WHERE actualBalance > initialBalance GROUP BY UserID";
                }
                else if($rq->dir == 2)
                {
                    $sql = "SELECT `UserID`, `BrandID`, `LoginEmail`, `LoginID`, initialBalance, actualBalance, round((actualBalance - initialBalance), 2) AS Total, `VIPGroup` FROM brandaccounts WHERE actualBalance < initialBalance GROUP BY UserID";
                } 
 


PM MAIL   Вверх
igorold
Дата 1.7.2015, 07:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: нет
Всего: 17



Всё правильно, вы же не суммарный баланс выводите и если у пользователя есть строки и отрицательного и положительного баланса, то он будет и там и там.

Но если вы напишете вместо
Код

WHERE actualBalance > initialBalance


Код

having sum(actualBalance - initialBalance)>0


тогда и сам баланс надо вычислять:
Код

round(sum(actualBalance - initialBalance), 2) AS Total


Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.1228 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.