|
|
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
scofielcl, если глубина менее 255, - установить системную переменную max_sp_recursion_depth и попробовать рекурсивную функцию Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 14:46:50 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
AkinaА алгоритм можно сделать таким. Создаём таблицу для накопления запчастей. Поле ID объявляем уникальным (можно первичным ключом). Кладём с неё начальную запись. Организуем цикл. Получаем и сохраняем в переменной количество записей таблицы. Вставляем в таблицу записи из исходных данных, связав их соотв. образом с временной и игнорируя дубликаты. Снова сохраняем в переменной количество записей таблицы. Продолжаем цикл, пока количества не совпадают. Количество циклюв получится на 1 больше макс. уровня вложенности. Теперь осталось связать таблицу со второй исходной и вывести результат. А сколько у вас должно получится циклов всего ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 15:12:43 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
И что то я не понимаю , почему логику алгоритма из первого поста нельзя реализовать на sql. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 15:27:49 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
scofielcl, в мускле нет рекурсивных запросов. Приходится делать процедурами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 19:54:39 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
но в коде из первого поста нет рекурсии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 10:24:35 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
scofielclно в коде из первого поста нет рекурсии.Без рекурсии. Почти как в коде из первого поста. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 13:33:41 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
Благодарю. сейчас разберу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 16:10:24 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
Доброе утро. Посмотрел ваш код. Для такого варианта, он работать не будет. т.к. в запросе queue происходит выборка только узлов второго порядка. вот дампы Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. т.е. как такового обхода дерева нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 11:03:34 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
> scofielcl: > Доброе утро. > Посмотрел ваш код. > Для такого варианта, он работать не будет. т.к. в запросе queue происходит выборка только узлов второго порядка. > {skipped} Согласен. Но вы же хотели "алгоритма из первого поста". Насколько знаю Жаву, код из первого поста также не обработает узлы "второго порядка". Поправьте, если ошибаюсь. ЗЫ: 17017347 смотрели ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 12:28:36 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
Алгоритм из 1 поста полноценно обходит дерево. В первом цикле достается узел и для каждого проверяется наличие комплектующих. В внутреннем цикле эти самые узлы ложатся в очередь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 12:37:02 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
Я недосмотрел, правильный алгоритм из первого поста приведен ниже: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 12:39:24 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
> scofielcl: > Я недосмотрел, правильный алгоритм из первого поста приведен ниже: > {skipped} Этот алгоритм реализован в 17017347 . Есть баг(?): не учитывается, что одна простая деталь может входить в состав более чем одной составной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:01:15 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
скукотища Этот алгоритм реализован в 17017347 . Есть баг(?): не учитывается, что одна простая деталь может входить в состав более чем одной составной. Тогда необходимо работать в временной таблицей содержащей данные из tool. И уменьшать соответств. значения. Но я не думаю что тогда возможно будет применить рекурсию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:06:33 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
> scofielcl: > Тогда необходимо работать в временной таблицей содержащей данные из tool. > И уменьшать соответств. значения. Но я не думаю что тогда возможно будет применить рекурсию. У Вашего кода 17045113 тот же баг(?). "Багфикс" Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:14:26 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
В 17045413 неправильно объявлен курсор. Надо Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:24:48 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
Да, там тот же баг. Код: plsql 1. А что такое ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:27:19 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
scofielclДа, там тот же баг. Код: plsql 1. А что такое ? ALTER TABLE в документации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:40:22 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
needs а не need ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:42:59 |
|
||
|
java code --> sql procedure/function
|
|||
|---|---|---|---|
|
#18+
scofielcl, сорри, очепятка. Должно быть Код: plsql 1. Добавляем индекс в таблицу-накопитель. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.12.2014, 13:51:21 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38837184&tid=1833767]: |
0ms |
get settings: |
6ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
32ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 362ms |

| 0 / 0 |
