Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Запрос
 
 автор: Mira   (20.05.2008 в 00:16)   письмо автору
 
 

Надеюсь, кто-нибудь мне сможет помочь.
Есть таблица "Прочие услуги" (прикрепленный файл).
Нужен параметрический запрос, который будет сначала предлагать ввести "название услуги", а затем будет подсчитывать сумму "стоимостей" этих введенных услуг. (Каждый раз при запуске запроса я захочу узнавать сумму стоимостей разного количества услуг).

Заранее благодарю

   
 
 автор: ronin80   (20.05.2008 в 10:53)   письмо автору
 
   для: Mira   (20.05.2008 в 00:16)
 

запрос будет примерно такой:

Select Стоимость_услуги
From Прочие_услуги
Where Название_услуги=:параметр

параметр будет передаваться из приложения (сайт или программа...)

" сумму "стоимостей" этих введенных услуг" - это как понять? в таблице каждая услуга уникальна, соответственно никакой суммы не будет, или будет вводиться несколько услуг? или надо по коду клуба суммировать?

"Каждый раз при запуске запроса я захочу узнавать сумму стоимостей разного количества услуг" - это тоже не понятно, если все услуги разные, то по какому признаку суммировать стоимость?

   
 
 автор: Mira   (20.05.2008 в 11:26)   письмо автору
 
   для: ronin80   (20.05.2008 в 10:53)
 

суммировать нужно "СТОИМОСТЬ" нескольких услуг, названия которых я буду задавать через парамерт

то бишь примерное так:
введите название услуги: Мезотерапия
введите название услуги: Фито-ванны
введите название услуги: 0

-> SUM -> 220€


мне нужно чтото в этом роде
спасибо, что откликнулись

   
 
 автор: ronin80   (20.05.2008 в 11:39)   письмо автору
 
   для: Mira   (20.05.2008 в 11:26)
 

ну тогда так:

Select SUM(Стоимость_услуги) as Стоимость
From Прочие_услуги
Where Название_услуги in (:параметр)
Group by Название_услуги

в параметре будете передавать через запятую наименования услуг

   
 
 автор: Trianon   (20.05.2008 в 11:45)   письмо автору
 
   для: ronin80   (20.05.2008 в 11:39)
 

Group by сведет на нет все усилия агрегатного запроса.

   
 
 автор: Trianon   (20.05.2008 в 11:46)   письмо автору
 
   для: ronin80   (20.05.2008 в 11:39)
 

   
 
 автор: Mira   (20.05.2008 в 12:54)   письмо автору
 
   для: ronin80   (20.05.2008 в 11:39)
 

>ну тогда так:
>
>Select SUM(Стоимость_услуги) as Стоимость
>From Прочие_услуги
>Where Название_услуги in (:параметр)
>Group by Название_услуги
>
>в параметре будете передавать через запятую наименования услуг

попробовала. не работает. параметр разрешает ввести, но в итоге выдается столбец Стоимость вообще без полей
без строки Group by Название_услуги выдает опять же столбей Стоимость, но с одним пустым полем

   
 
 автор: Trianon   (20.05.2008 в 11:43)   письмо автору
 
   для: Mira   (20.05.2008 в 00:16)
 

Запрос, подсчитывающий общую стоимость услуг, выбранных списком кодов, будет выглядеть как-то так:

SELECT SUM(`Стоимость_услуги`) 
  FROM `Прочие_услуги` 
  WHERE `Код_услуги` IN (11,14,21)


Запрос, подсчитывающий общую стоимость услуг, выбранных списком названий, соответственно будет выглядеть так:

SELECT SUM(`Стоимость_услуги`) 
  FROM `Прочие_услуги` 
  WHERE `Название_услуги` IN ('SPA Сауна' , 'Фито-ванны', 'Пилинг лица')


Первый представляется мне более практичным.

   
 
 автор: ronin80   (20.05.2008 в 12:01)   письмо автору
 
   для: Trianon   (20.05.2008 в 11:43)
 

"Group by сведет на нет все усилия агрегатного запроса" - странно, а у меня почему то работает

указанный вами запрос выведет общую сумму услуг, а я просто разбил по наименованию, автор же написал:

"Каждый раз при запуске запроса я захочу узнавать сумму стоимостей разного количества услуг"

может просто я не понял :)

   
 
 автор: Mira   (20.05.2008 в 12:57)   письмо автору
 
   для: Trianon   (20.05.2008 в 11:43)
 

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

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования