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

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.11.2018, 11:47
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Всем доброго дня. Есть вот такой запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. результатом которого выводится вот такой список: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Суть дальнейших действий состоит в том, чтобы убрать повторяющиеся строки, но при использование,, предположим, Distinct или Group By, сервер по умолчанию применяет сортировку по алфавиту, а это, в данном случае, совершенно не нужно. Нужно получить что-то типа: Код: plaintext 1. 2. 3. 4. 5. 6. Подскажите, пожалуйста, как это можно реализовать? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 11:50
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Какая разница, сортировать по алфавиту или по рандому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 12:00
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Akina, Разница заключается в том, что это уровни иерархии, и чтобы их дальше вывести в столбцы, их порядок по отношению к уровню не должен быть нарушен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 12:18
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
lopsterAkina, Разница заключается в том, что это уровни иерархии, и чтобы их дальше вывести в столбцы, их порядок по отношению к уровню не должен быть нарушен.Чтобы был определённый порядок, должно быть поле, задающее этот порядок. Оно у вас есть? Дополните OVER() предложением PARTITION BY [value] и оставьте в результате строки с rn=1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 12:56
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
iap, так порядок и задается rn. Я пробовал это сделать точно так, как вы написали. Не работает. Запрос из поста можно запустить в любой студии с версией сервера от 2016 и проверить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 13:04
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Может так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 14:30
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
lopsteriap, так порядок и задается rn. Я пробовал это сделать точно так, как вы написали. Не работает. Запрос из поста можно запустить в любой студии с версией сервера от 2016 и проверить.Порядок у вас никак не задаётся! И rn здесь совершенно не при чём. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 14:39
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Не пользуйтесь для этой задачи STRING_SPLIT. Напишите функцию разделения, где будет явно указана позиция item в строке. Через xml например, или clr-ку напишите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 14:45
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
iap, Это решение получается только для частного случая. Если я, допустим, меняю строку: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. , то результат будет один фиг по алфавиту. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 15:33
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
lopster, значит требуется промежуточное сохранения нумерованного списка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 15:35
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Или табличную CLR допилите для устранения дублей, которая делает split. В инете можно код найти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 15:35
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
lopster, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 16:22
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Еще вариант Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 16:46
|
|||
|---|---|---|---|
Удаление строк с повторяющимися значениями. |
|||
|
#18+
uaggsterНе пользуйтесь для этой задачи STRING_SPLIT. Напишите функцию разделения, где будет явно указана позиция item в строке. Через xml например, или clr-ку напишите.Всё давно написано: Функция, которая делит строку на слова ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 21:29
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Владислав Колосовзначит требуется промежуточное сохранения нумерованного списка. Правильно ли я понял, что это особенность запросов с подзапросами, что нумерация ROW_NUMBER может примениться не внутри подзапроса/сте, а позже, при окончательной выборке, как происходит у ТС? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.11.2018, 11:09
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
PizzaPizza, Сервер не рассматривает CTE как отдельно выполняющиеся запросы, а строит общий план выполнения. Поэтому и возникают проблемы с сортировками казалось бы верного выражения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.11.2018, 20:02
|
|||
|---|---|---|---|
|
|||
Удаление строк с повторяющимися значениями. |
|||
|
#18+
Владислав КолосовPizzaPizza, Сервер не рассматривает CTE как отдельно выполняющиеся запросы, а строит общий план выполнения. Поэтому и возникают проблемы с сортировками казалось бы верного выражения. Ага. То есть в данном случае сервер решил, что ему удобнее и проще так выполнить запрос. А есть ли хинты, помимо выноса в табличную переменную или временную таблицу, что бы форсить выполнение row_number внутри подзапроса в случае ТС? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1688846]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 269ms |
| total: | 388ms |

| 0 / 0 |
