@Tiberian

Почему MySql добавляет ноль к SUM(value)?

Собственно, есть запрос:
select u.*, s.name as status_name, s.color as status_color, max(l.lvl) as lvl, sum(pow.value) as pow
from do_user u
join do_levels l
JOIN do_user_status s ON u.status = s.id 
JOIN (select * from do_user_power where type = 1) pow ON u.id = pow.uid
WHERE u.id = 5 AND u.exp >= l.exp


pow выводит значение 3230, когда простой селект с такими же параметрами выводит число 323.
Почему mysql добавляет 0 к значению и как от этого избавиться?
  • Вопрос задан
  • 246 просмотров
Решения вопроса 1
@Tiberian Автор вопроса
В общем, данные на хостингах различались, да.
Сделал импорт из того, где работало.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Fortop
Tech/Team lead
Во-первых, вы написали ерунды в запросе.
Запутали в пачке одинаковых алиасов для таблиц и столбцов.

Во-вторых, основная проблема у вас в JOIN.
Количество данных у вас в простом запросе и в запросе с JOIN отличается, соответственно и разные результаты.

Ну и разное поведение на хостингах тоже может быть обусловлено разными данными
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 22:26
3500 руб./за проект
22 нояб. 2024, в 21:47
3000 руб./за проект
22 нояб. 2024, в 21:44
50000 руб./за проект