|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Есть таблица входимости деталей вида (обозначения деталей такие напишу для наглядности): уровенькудачто...110010001001100...110010001001200...110010001001300...210012001001210...210012001001220...210013001001310...210013001001320...310013101001311............... Нужно отсортировать так, чтобы получилась таблица в которой наглядно виден состав изделия "1001000": уровенькудачто...110010001001100...110010001001200...210012001001210...210012001001220...110010001001300...210013001001310...310013101001311...210013001001320............... Целый день буксую ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 19:05 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Код: sql 1.
или заранее создать индекс Код: sql 1. 2.
а при необходимости его использовать Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 20:31 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Dima T, Не-не... Обозначения деталей вовсе не такие ровненькие (символьное поле которое может включать цифры, буквы и знак "."), просто для наглядности так написала. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 20:40 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Писать надо как есть, а не "для наглядности". Так подойдет? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 20:47 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Dima T, Вся таблица - состав одного изделия "1001000". В него входят на первом уровне детали 1001100, 1001200, 1001300. Второй уровень - это детали, которые входят в детали первого уровня и тд и тп. На выходе должно быть по алфавиту 1001100 (дальше то, что входит в эту деталь на разных уровнях, если что-то есть), потом 1001200 (дальше то, что входит в эту деталь на разных уровнях, если что-то есть) и тд. ЗЫ: Сильно сомневаюсь что здесь получится сделать что-либо одним только селектом, или я уж совсем отупела после болезни... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 21:05 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Древовидный справочник? Если общее количество уровней - не определенное, то одним запросом не получится... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 22:24 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
ВладимирМ, Дерево, угу... Я сегодня из-за него сама себя уже деревом считаю (( Наворотила хз что, а толку чуть. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2014, 22:53 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Здесь надо либо рекурсию делать, либо конструировать специальное поле сортировки. Впрочем, оба вариант требуют слегка "повернуть мозги" Хотя в принципе, ничего особо сложного Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2014, 00:02 |
|
Сменить сортировку в таблице
|
|||
---|---|---|---|
#18+
Да, надеюсь, Вы в курсе, что в FoxPro количество уровней вложенности процедур ограничено. Для VFP9 - 128 уровней, для младших версий, если не ошибаюсь, 32. Это значит, что через рекурсии можно найти ветки с глубиной не более чем в 128 уровней для VFP9. Если уровней больше, то придется решать задачу через введение поля сортировки ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2014, 00:09 |
|
|
start [/forum/topic.php?fid=41&fpage=35&tid=1582772]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 136ms |
0 / 0 |