Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
dem59 Member Откуда: Сообщений: 4 |
нужно построить иерархию известно родитель каждого объекта, запрос прилагаю, почему данные задваиваются или даж затраиваются, может есть другой способ построить... FROM dm_sysobject_s doc_s, dt_document_s doc, dt_node_s res_n, dt_resolution_s res, dm_sysobject_s res_s LEFT OUTER JOIN dt_instruction_s ins on (ins.id_resolution = res_s.i_chronicle_id AND ins.i_partition = 4000 ) LEFT OUTER JOIN dt_node_s ins_n on (ins.r_object_id = ins_n.r_object_id AND ins.i_partition = 4000) LEFT OUTER JOIN dt_node_s res_n1 ON ( res_n1.id_parent = res_s.i_chronicle_id AND res_n1.i_partition = 3000 AND res_n1.n_state = (100)) LEFT OUTER JOIN dt_resolution_s res1 ON (res1.r_object_id = res_n1.r_object_id AND res1.i_partition = 3000 and res1.id_author = ins.id_plan_performer) LEFT OUTER JOIN dm_sysobject_s res_s1 ON (res_s1.r_object_id = res1.r_object_id AND res_s1.i_partition = 3000) LEFT OUTER JOIN dt_instruction_s ins1 ON (ins1.id_resolution = res_s1.i_chronicle_id AND ins1.i_partition = 4000 AND ins1.n_kind = 2) LEFT OUTER JOIN dt_node_s ins_n1 ON (ins_n1.r_object_id = ins1.r_object_id AND ins_n1.i_partition = 4000 AND ins_n1.n_state IN (130, 140, 150)) LEFT OUTER JOIN dt_appointment_s app ON ( ins1.id_plan_performer = app.r_object_id AND app.i_partition = 108) LEFT OUTER JOIN dt_employee_s emp ON (app.id_employee = emp.r_object_id AND emp.i_partition = 102) LEFT OUTER JOIN dm_sysobject_s emp_so ON (emp.r_object_id = emp_so.r_object_id AND emp_so.i_partition = 102) where doc.r_object_id = doc_s.r_object_id and res.r_object_id = res_n.r_object_id and res.r_object_id = res_s.r_object_id and res_n.id_parent = doc_s.i_chronicle_id AND res.n_kind IN (0, 1, 2) AND res_n.n_state = (100) AND doc_s.i_partition IN (2000, 2200, 2300) AND res_n.i_partition = 3000 AND res.i_partition = 3000 AND res_s.i_partition = 3000 Сообщение было отредактировано: 21 май 13, 17:17 |
21 май 13, 17:17 [14328657] Ответить | Цитировать Сообщить модератору |
Гавриленко Сергей Алексеевич Member Откуда: Moscow Сообщений: 37139 |
Ошибка у вас в запросе, вот и "задваиваются или даж затраиваются". |
21 май 13, 17:18 [14328667] Ответить | Цитировать Сообщить модератору |
Паганель Member Откуда: Винница Сообщений: 22551 |
вот как можно было написать половину запроса через запятые, а вторую - через join-ы? |
21 май 13, 17:20 [14328686] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Как написали, так и задваиваются/затраиваются
наверняка есть |
||||
21 май 13, 17:22 [14328705] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31778 |
Потом подумаете о логике запроса и исправите ошибку (тут никто не поможет, мы же не знаем вашу модель данных). |
||
21 май 13, 19:21 [14329313] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31778 |
|
||||
21 май 13, 19:22 [14329317] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |