Задать вопрос
Sekira
@Sekira

Временная таблица в MySQL внутри SELECT

Есть одномерный массив вида: key => value

Выполняется MySQL запрос: select `key`, `field` from `table` where `key` in (key1, key2, key3)
Затем пробегаемся по результату:
result += array[key]*field
В итоге нужное число в переменной «result»

Вопрос:
Можно ли как то ограничиться одним mysql запросом, чтобы в нем уже был «result», что-то типа:
select sum(`table`.`field`*`temp`.`value`) from `table`, (key1 => value1, key2 => value2, key3 => value3) as `temp` where `key` in (key1, key2, key3) and `table`.`key`=`temp`.`key`
  • Вопрос задан
  • 7822 просмотра
Подписаться 2 Оценить 6 комментариев
Пригласить эксперта
Ответы на вопрос 1
@Progrik
Если стоит MySQL 5, то самое правильно что можно сделать и получить результат — написать хранимую процедуру.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы