![]() |
|
Модераторы: Poseidon |
![]()
|
|
| stuPete |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.1.2009 Репутация: нет Всего: нет |
Здравствуйте, товарищи кодеры!
У меня 3 таблицы: students, stu_hobbies,hobbies students: n_zach(номер зачетки), n_gr(номер группы),b_date(дата рождения) и т.д. имя фамилия и прочее stu_hobbies: n_zach(номер зачетки), hobby(название хобби студента) и т.д. она связная между students и hobbies, в которой только список всех возможных хобби Моя задача: Найти людей с наибольшим кол-вом хобби и у которого день рождения в этом месяце прибавить к номеру группы 1000 - т.е. увеличть курс на 1. Что я сделал: 1. Сделал view для поиска максимального кол-ва хобби 2. Написал запрос для поиска людей с макс. хобби и Д.Р. в тек месяце 3. Написал курсор - в этом пункте я не уверен - я ламер =) Что происходит: Не выдает ошибок компиляции. А ответа с сервера нету сколько ни жди. причем 1 и 2 пункты пашут. Работаю в Oracle. вот код по пунктам 1. create or replace view max_hobbies as select n_zach, count(distinct hoby) as count_hobbies from stu_hobbies group by n_zach; 2. select n_zach from students where n_zach in (select distinct n_zach from stu_hobbies where n_zach in (select n_zach from max_hobbies where count_hobbies in (select max(count_hobbies) from max_hobbies) ) and to_char(b_date,'mm')=to_char(sysdate,'mm')); 3. set serveroutput on; declare cursor hobby_brth is select n_zach from students where n_zach in (select distinct n_zach from stu_hobbies where n_zach in (select n_zach from max_hobbies where count_hobbies in (select max(count_hobbies) from max_hobbies) ) and to_char(b_date,'mm')=to_char(sysdate,'mm')); s hobby_brth%rowtype; begin open hobby_brth; fetch hobby_brth into s; while hobby_brth%found loop update students set students.n_gr = students.n_gr +1000 fetch hobby_brth into s; end loop; ... Пожалуйста помогите найти ошибку или подскажите другой путь решения |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |