|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.11.2014, 18:30 | #1 |
Регистрация: 30.11.2014
Сообщений: 6
|
Помогите, пожалуйста, найти ошибку в Select..case
Помогите, пожалуйста.
Необходимо разбить работников по группам: 1. Начальники департаментов. 2. Менеджеры (имеют подчинённых, но не являются начальниками департаментов). 3. Простые работники (не имеют подчиненных и не являются начальниками департаментов). У меня получился вот такой код. Ошибку не выдает, но и работает не правильно. Код:
Последний раз редактировалось Alex3880; 30.11.2014 в 18:32. Причина: не отображается картинка |
30.11.2014, 19:15 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
По-моему это в корне неверно...
Покажи структуру таблиц.
I'm learning to live...
|
30.11.2014, 19:18 | #3 |
Регистрация: 30.11.2014
Сообщений: 6
|
Это стандартная схема HR Oracle
Код:
Код:
Последний раз редактировалось Stilet; 30.11.2014 в 19:23. |
30.11.2014, 19:26 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А что эти все поля означают ты разобрался?
Я правильно понял - это учебная задача?
I'm learning to live...
|
30.11.2014, 19:30 | #5 |
Регистрация: 30.11.2014
Сообщений: 6
|
Да, это учебная задача. Всю базу уже наизусть выучил. Начальники департаментов выводятся правильно. А дальше полная чушь получается.
|
30.11.2014, 20:18 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Так а что каждое поле означает? Я например не в курсе.
Какое из полей там означает должность?
I'm learning to live...
|
30.11.2014, 20:34 | #7 |
Регистрация: 30.11.2014
Сообщений: 6
|
Должности находятся отдельно в таблице JOB. Названия должностей очень неудобные и можно запутаться кто есть кто.
Последний раз редактировалось Alex3880; 01.12.2014 в 12:15. |
30.11.2014, 20:47 | #8 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,834
|
А это точно задача на select case, а не на connect by/start with, например? Если на select case, то для трех уровней таблица departments должна участвовать в запросе три раза под разными синонимами.
В разработке: воспроизводственный контур ИТ
|
30.11.2014, 20:51 | #9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Выставил две таблицы, в то время как в решении участвуют три. Мой ответ: Присоединяй таблицу с должностями, и убери твой case. Он тебе ничем не поможет в этом случае.
I'm learning to live...
|
|
30.11.2014, 20:54 | #10 |
Регистрация: 30.11.2014
Сообщений: 6
|
Точно, как не кручу не могу отделить менеджера от простого рабочего
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите найти ошибку пожалуйста | Petrichor | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 22.03.2014 19:29 |
C# пожалуйста помогите найти ошибку | Olgazag | Свободное общение | 16 | 11.12.2013 07:33 |
помогите пожалуйста найти ошибку. | ksu25 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 07.10.2009 20:38 |
Пожалуйста помогите найти ошибку =) | Обледеневший | Общие вопросы C/C++ | 6 | 19.09.2009 14:13 |