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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Выбрать 10 человек по критерию

Сообщения:  [1-10]   [11-12] 

 
 автор: Trianon   (24.05.2006 в 16:27)   письмо автору
 
   для: Elina   (24.05.2006 в 16:19)
 

тогда просто добавьте ограничение вроде такого

HAVING sum(mark)/10 <90 and sum(mark)/10 >80
AND sum((sex-1)*1000+1)=5010

   
 
 автор: Elina   (24.05.2006 в 16:19)   письмо автору
 
   для: Trianon   (24.05.2006 в 15:19)
 

да подсчитывает правильно

   
 
 автор: Trianon   (24.05.2006 в 15:19)   письмо автору
 
   для: Elina   (24.05.2006 в 15:10)
 

И сумма оценок оказывается в заданных пределах? Не верю.

   
 
 автор: Elina   (24.05.2006 в 15:10)   письмо автору
 
   для: Trianon   (24.05.2006 в 14:12)
 

почему то работает и выдает верно

только

HAVING sum(mark)/10 <90 and sum(mark)/10 >80; 

   
 
 автор: Trianon   (24.05.2006 в 14:12)   письмо автору
 
   для: Elina   (24.05.2006 в 13:48)
 

По-моему, этот запрос работать не будет, даже если убрать ограничение 5+5...

   
 
 автор: Elina   (24.05.2006 в 13:48)   письмо автору
 
   для: Trianon   (24.05.2006 в 13:03)
 

спасибо ,но это для меня сложновато
воспользовалась примером Loki , немного изменив его

SELECT TOP 5 id,mark FROM student WHERE sex=1
 UNION
 SELECT TOP 5 id,mark  FROM student WHERE sex=2
GROUP BY id, mark
HAVING sum(mark)/10 <90 and sum(mark)/10 <80; 


но вместо TOP хочу воспользоваться LIMIT , но получаю ошибку

как можно исправить

   
 
 автор: Trianon   (24.05.2006 в 13:03)   письмо автору
 
   для: Trianon   (24.05.2006 в 12:39)
 

Боюсь только, что сервер с этим не справится.

SELECT  m1.name, m2.name, m3.name, m4.name, m5.name,
        w1.name, w2.name, w3.name, w4.name, w5.name
FROM
     student as m1, student as m2, student as m3, student as m4, student as m5,
     student as w1, student as w2, student as w3, student as w4, student as w5
     WHERE 
               m1.id < m2.id AND m2.id < m3.id AND m3.id < m4.id AND m4.id < m5.id
           AND w1.id < w2.id AND w2.id < w3.id AND w3.id < w4.id AND w4.id < w5.id
           AND m1.sex+m2.sex+m3.sex+m4.sex+m5.sex = 10
           AND w1.sex+w2.sex+w3.sex+w4.sex+w5.sex = 5
           AND (m1.mark+m2.mark+m3.mark+m4.mark+m5.mark+w1.mark+w2.mark+w3.mark
               +w4.mark+w5.mark) BETWEEN 800 AND 880

   
 
 автор: Elina   (24.05.2006 в 13:00)   письмо автору
 
   для: Trianon   (24.05.2006 в 12:39)
 

желательно все , но хотя бы получить одну а там...

   
 
 автор: Elina   (24.05.2006 в 12:57)   письмо автору
 
   для: Loki   (24.05.2006 в 12:23)
 

спасибо за момощь

хочу уточнить что их общая сред. ариф. оценка должна быть между 80 и 88 то есть у одного может быть 70 у другого 90

   
 
 автор: Trianon   (24.05.2006 в 12:39)   письмо автору
 
   для: Elina   (24.05.2006 в 12:18)
 

Нужно получить все такие группы?

   

Сообщения:  [1-10]   [11-12] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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