PHP/MySQL | сумма данных в mysql
В общем. У меня есть таблица players, со строками с id игроков и столбцы stolbec stolbec2 stolbec3 и т.д
Вопрос, как вывести через переменную сумму значений в этих столбцах для конкретного ИД?
________
посл. ред. 17.03.2015 в 19:13; всего 1 раз(а); by _sukurich_
Вопрос, как вывести через переменную сумму значений в этих столбцах для конкретного ИД?
________
посл. ред. 17.03.2015 в 19:13; всего 1 раз(а); by _sukurich_
сразу скажу сумму лучше высчитывать в 4 столбец.
Сталкивался с этим в играх, mysql невероятно грузится от постоянной суммы.
В коде это примерно так `pole1` + `pole2` + `pole3` + `pole4` > 1000 к примеру.
Это вызывает создание временной таблицы и сортировки filesort.
Естественно не индексы ничего нельзя в данной ситуации применить
Сталкивался с этим в играх, mysql невероятно грузится от постоянной суммы.
В коде это примерно так `pole1` + `pole2` + `pole3` + `pole4` > 1000 к примеру.
Это вызывает создание временной таблицы и сортировки filesort.
Естественно не индексы ничего нельзя в данной ситуации применить
Mobiaaa (17.03.2015 в 19:19)
сразу скажу сумму лучше высчитывать в 4 столбец.
Сталкивался с этим в играх, mysql невероятно грузится от постоянной суммы.
В коде это примерно так `pole1` + `pole2` + `pole3` + `pole4` > 1000 к примеру.
Это вызывает создание временной таблицы и сортировки filesort.
Естественно не индексы ничего нельзя в данной ситуации применить
сразу скажу сумму лучше высчитывать в 4 столбец.
Сталкивался с этим в играх, mysql невероятно грузится от постоянной суммы.
В коде это примерно так `pole1` + `pole2` + `pole3` + `pole4` > 1000 к примеру.
Это вызывает создание временной таблицы и сортировки filesort.
Естественно не индексы ничего нельзя в данной ситуации применить
Придется значение каждого столбца в переменную заносить и в новой переменной считать сумму переменных?
_sukurich_, Можно и так.
Я делал в стиле ГКода.
В идеале это нужно при каждом обновлении любого столбца пересчитывать сумму.
Так как мне это не оплачивали, и заказчик отказался, пришлось сделать пересчёт в шапке кода, при каждом переходе юзера.
В любом случае один UPDATE лучше, чем вот такая каторжная сумма 4 полей с сравнением
Я делал в стиле ГКода.
В идеале это нужно при каждом обновлении любого столбца пересчитывать сумму.
Так как мне это не оплачивали, и заказчик отказался, пришлось сделать пересчёт в шапке кода, при каждом переходе юзера.
В любом случае один UPDATE лучше, чем вот такая каторжная сумма 4 полей с сравнением
Mobiaaa (17.03.2015 в 19:25)
_sukurich_, Можно и так.
Я делал в стиле ГКода.
В идеале это нужно при каждом обновлении любого столбца пересчитывать сумму.
Так как мне это не оплачивали, и заказчик отказался, пришлось сделать пересчёт в шапке кода, при каждом переходе юзера.
В любом случае один UPDATE лучше, чем вот такая каторжная сумма 4 полей с сравнением
_sukurich_, Можно и так.
Я делал в стиле ГКода.
В идеале это нужно при каждом обновлении любого столбца пересчитывать сумму.
Так как мне это не оплачивали, и заказчик отказался, пришлось сделать пересчёт в шапке кода, при каждом переходе юзера.
В любом случае один UPDATE лучше, чем вот такая каторжная сумма 4 полей с сравнением
Можешь мне код написать?
DELETED
17 марта 2015, в 19:31
Delete
так не пойдёт?
SELECT num1 + num2 FROM имя таблицы WHERE id = нужный id
, где num1 и num2 - наименования столбцов в таблице, в которых хранятся числа
СТОП!
Что-то я не понял)
Когда читал топик, вроде бы не было выборки по ID.
Если есть ID, заносим в index() это поле.
И в итоге данные будут извлекаться за доли секунды.
А сумму уже можно вычислить в php.
$summa=$data['pole1']+$data['pole2']+$data['pole3'];
Что-то я не понял)
Когда читал топик, вроде бы не было выборки по ID.
Если есть ID, заносим в index() это поле.
И в итоге данные будут извлекаться за доли секунды.
А сумму уже можно вычислить в php.
$summa=$data['pole1']+$data['pole2']+$data['pole3'];
Mobiaaa (17.03.2015 в 19:36)
СТОП!
Что-то я не понял)
Когда читал топик, вроде бы не было выборки по ID.
Если есть ID, заносим в index() это поле.
И в итоге данные будут извлекаться за доли секунды.
А сумму уже можно вычислить в php.
$summa=$data['pole1']+$data['pole2']+$data['pole3'];
СТОП!
Что-то я не понял)
Когда читал топик, вроде бы не было выборки по ID.
Если есть ID, заносим в index() это поле.
И в итоге данные будут извлекаться за доли секунды.
А сумму уже можно вычислить в php.
$summa=$data['pole1']+$data['pole2']+$data['pole3'];
Значит надо перед этим ещё вывести переменную $data ,где будет выводиться значение полей?
А вариант Вилы подойдет?
Ups
_sukurich_, Ну так всё равно же выводить.
Логично?)
Пойдёт и такой вариант, но я бы всё равно в php сумму выводил) а не mysql'ом
Логично?)
Пойдёт и такой вариант, но я бы всё равно в php сумму выводил) а не mysql'ом
Стр.: 1, 2