powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / запрос на вычисление
9 сообщений из 9, страница 1 из 1
запрос на вычисление
    #38893244
hgfhdf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
привет! у меня есть величина, которая рассчитывается по формуле k=a*b*c/d, причем a, b, c и d хранятся в разных таблицах. можно ли каким-то образом составить запрос к этим таблицам, который бы считал по этой формуле нужное k и вносил его в отдельную таблицу?
...
Рейтинг: 0 / 0
запрос на вычисление
    #38893248
можно.
читай про select, insert | update
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
запрос на вычисление
    #39204648
sameuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер. Есть вопрос :)
Если опустить некоторые нюансы для упрощения, ситуация выглядит примерно так: есть личный кабинет у клиента. В этом кабинете клиент должен видеть свой баланс... Который вычисляется как сумма всех пополнений счета клиента минус сумма всех расходов клиента.

Расходы подсчитать несколько сложнее.
Представим, что товары клиента представлены в таблице записями примерно таким образом:


Код: html
1.
2.
3.
4.
5.
Название_Товара   IMG   Стоимость_РУБ   Количество_ШТ   Страховка_%   Доставка_РУБ  

Балалайка          -       1 000              10           5%		  300
Смартфон           -       5 000              1            0%           1 000
Ноутбук            -      30 000              3            10%          2 500 



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

Какими путями реализуется подсчет по каждой строке?
Подсчитывается количество записей (Count) и через цикл for считаем сумму для каждой из строк, а затем складываем эти суммы?
Или создается триггер, который подсчитывает сумму в отдельном столбце при каждом изменении таблицы?
...
Рейтинг: 0 / 0
запрос на вычисление
    #39204664
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sameuserи через цикл forпокажите место в mysql-ной документации, описывающее "цикл for" :)
И вообще, что подразумевается под "подсчётом по каждой строке"? Вы не знаете про агрегатные функции или имеется в виду что-то гораздо более сложное?
...
Рейтинг: 0 / 0
запрос на вычисление
    #39205187
sameuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор "подсчётом по каждой строке"?
Под этим подразумевается набор операций:

( Стоимость_РУБ Х Количество_ШТ ) + %страховка + Доставка

В примере, описанном выше, результатами подсчета будут

10 800 Р
6 000 Р
101 500 Р
...
Рейтинг: 0 / 0
запрос на вычисление
    #39205192
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот так и напишешь
Код: sql
1.
2.
3.
4.
SELECT
  `Название_Товара`
, ( `Стоимость_РУБ` * `Количество_ШТ` ) + `%страховка` + `Доставка` AS `Результат подсчёта`
FROM `Моя таблица`


Или ты и правда думаешь, что MySQl не умеет ни складывать, ни умножать, ни скобки учитывать?
...
Рейтинг: 0 / 0
запрос на вычисление
    #39205245
sameuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за советы. Не грызите меня сильно) Я осваиваю SQL, могу ошибаться, задавать некорректные вопросы и излагать странные выводы. :)

А если подобных "строк" (помню, они именовались кортежами) у клиента будет 100 или 200 штук..
Процесс подсчета не будет в таком случае, как бы это выразиться, обременительным для системы?) Предполагается в таком случае не одна сотня суммирований, вычислений процентов, умножений..

Не хотелось бы хранить в "отдельном столбце" сумму (которую мы можем и без того подсчитать, используя имеющиеся данные).. Хотелось придерживаться правил нормализации. Возможно, я недооцениваю вычислительные мощности SQL.
...
Рейтинг: 0 / 0
запрос на вычисление
    #39205248
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sameuserА если подобных "строк" (помню, они именовались кортежами) у клиента будет 100 или 200 штук..
Процесс подсчета не будет в таком случае, как бы это выразиться, обременительным для системы?
Вот когда он станет "обременительным для системы" - тогда и начинай спрашивать. Но пока количество записей не перевалит за хотя бы десяток миллионов, тебе это не грозит...
...
Рейтинг: 0 / 0
запрос на вычисление
    #39205472
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sameuser,
если колонка "сумма" и прочие "счетные" не используются в дальнейшем для поиска (в индексе), то практически смысла его держать нет
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / запрос на вычисление
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]