Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.08.2018, 13:50
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
Добрый день всем! Скажу сразу, поиском пользовался, варианты не совсем рабочие находил. Суть проблемы: есть табличка интервалов например на прямой, координаты интервалов: x1 x2 1 10 1 10 1 10 1 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 13:54
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
fsmk, это Gaps and Islands in Sequences https://www.red-gate.com/simple-talk/sql/t-sql-programming/the-sql-of-gaps-and-islands-in-sequences/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 13:56
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
случайно запостил, не нашел как отредактировать пост пишу дальше: есть табличка интервалов например на прямой, координаты интервалов: x1 x2 1 10 2 11 5 5 Нужно разбить на подинтервалы и получить: 1 2 2 5 5 10 10 11 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 14:22
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
uaggster, не совсем то. мне по сути острова нужно тоже делить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 14:32
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 14:34
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
fsmkслучайно запостил, не нашел как отредактировать пост пишу дальше: есть табличка интервалов например на прямой, координаты интервалов: x1 x2 1 10 2 11 5 5 Нужно разбить на подинтервалы и получить: 1 2 2 5 5 10 10 11Эта задача не решается в один поток. SQL тут не помощник. Используй другие методы для решения алгоритмических задач. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.08.2018, 14:49
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
invm, благодарю!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.08.2018, 11:23
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
invm, insert into @t values (1, 2), (3, 5), (3, 7); с такими значениями выдает лишний интервал 2 - 3, от ведь не пересекается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.08.2018, 12:33
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
fsmk, Разбейте исходный набор на два - интервалы, которые не пересекаются с другими и остальные. Первый пойдет напрямую в результат, а ко второму примените показанное преобразование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.08.2018, 13:19
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.08.2018, 22:22
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
fsmk, можно в решение invm добавить проверку на попадание внутрь существующего интервала. Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2018, 06:18
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
fsmk, сборная солянка на основе лучших моментов из предыдущих решений + небольшая изюминка собственного приготовления... :) Код: 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. желающим проверок - ссылка на sqlfiddle.com ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2018, 07:23
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
Щукина Анна , Вам не кажется, что с учётом Код: sql 1. и Код: sql 1. условие Код: sql 1. является избыточным? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2018, 07:25
|
|||
|---|---|---|---|
|
|||
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
Akina, все данные для тестирования доступны. попробуйте с условием, без условия и почувствуйте разницу ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2018, 08:31
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
Щукина Анна , да, не посмотрел, что свёртка выполняется именно на этом этапе, а не на предыдущем. Сорри. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.08.2018, 08:33
|
|||
|---|---|---|---|
Разбиение пересекающихся интервалов на подинтервалы |
|||
|
#18+
PS. Старайтесь всё же пользоваться менее тормозными fiddle-ресурсами. Скажем, db<>fiddle или db-fiddle . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1689308]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 371ms |

| 0 / 0 |
