|
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 48
|
|
Отобрать записи при не пустом значении по счетчику13.03.2019, 19:32. Показов 2300. Ответов 7
Добрый вечер.
Просьба помочь с такой задачей: nomer znachenie 2222 ? 2222 ? 2222 ? 2222 есть значение 2222 ? 3333 ? 3333 ? 3333 ? 3333 ? 3333 ? 3333 ? 3333 ? 3333 есть значение 3333 ? 3333 ? 4444 ? 4444 ? 4444 ? 4444 есть значение 4444 ? 4444 ? 4444 ? 4444 ? 4444 ? 4444 ? 5555 ? 5555 ? 5555 ? 5555 ? 5555 ? Есть связка из 2 таблиц, в первой основной столбец nomer, вторая таблица притянута через left join, основной столбец znachenie Необходимо выбрать из первого столбца только те номера, для которых в пяти подряд записях нет значения во втором столбце. То есть на выходе должно быть только: 3333 4444 5555 Возможно ли это сделать через case? С курсорами/циклами никогда не работал, если посоветуйте какой-нибудь пример, буду очень признателен.
0
|
|
| 13.03.2019, 19:32 | |
|
Ответы с готовыми решениями:
7
Скрывать при пустом значении Не выводить при пустом значении
|
|
411 / 365 / 142
Регистрация: 09.04.2011
Сообщений: 1,051
|
|
| 13.03.2019, 20:10 | |
|
нумеруете каждую группу, выбираете те номера, у которых в нумерации есть 5
если в вашей версии нет оконных функций, то можно сделать с помощью пользовательских переменных , см примеры в https://webew.ru/articles/3923.webew доп: пп это для MySQL, а так зависит от того какая у вас субд
0
|
|
|
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 48
|
|
| 13.03.2019, 20:43 [ТС] | |
|
А как нумерация определит, есть ли в группе 5 подряд идущих null?
0
|
|
|
411 / 365 / 142
Регистрация: 09.04.2011
Сообщений: 1,051
|
|
| 13.03.2019, 20:58 | |
Сообщение было отмечено undead92 как решение
Решение
сбрасывайте нумерацию при наличии значения и переходе на новый номер
после нумерации у вас будет выборка вида nomer znachenie `нумерация` 2222 ? 1 2222 ? 2 2222 ? 3 2222 есть значение 2222 ? 1 3333 ? 1 3333 ? 2 3333 ? 3 3333 ? 4 3333 ? 5 3333 ? 6 3333 ? 7 3333 есть значение 3333 ? 1 3333 ? 2 4444 ? 1
1
|
|
|
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 48
|
|
| 13.03.2019, 21:05 [ТС] | |
|
Да, спасибо, алгоритм понятен, буду копать
ps субд терадата
0
|
|
|
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 48
|
||||||
| 14.03.2019, 19:24 [ТС] | ||||||
|
К сожалению не удалось выполнить задачу оконным способом.
то есть получается вот так: 2222 ? 1 2222 ? 2 2222 ? 3 2222 есть значение 2222 ? 4 3333 ? 5 3333 ? 6 3333 ? 7 3333 ? 8 3333 ? 9 3333 ? 10 3333 ? 11 3333 есть значение 3333 ? 12 3333 ? 13 4444 ? 14 пробовал разные комбинации partition и ORDER BY - в моей таблице не к чему привязаться, т.к. номера id к примеру идут в разнобой. Каким образом можно сбросить счетчик при наличии значения?
0
|
||||||
|
411 / 365 / 142
Регистрация: 09.04.2011
Сообщений: 1,051
|
||
| 15.03.2019, 11:27 | ||
Сообщение было отмечено undead92 как решение
Решениебез указания ORDER BY он не определен, т.е. ваш запрос может возвращать разный порядок строк в зависимости от положения звезд без переменных и оконных ф-ий можно для каждой строки сделать зависимый подзапрос, выбирающий предыдущие 4 строки, и если nomer у всех совпадает, а znachenie неопределено, значит это и есть нужный вам номер но, чтобы выбрать предыдущие строки, нужно указать серверу по какому признаку определяется порядок строк
1
|
||
|
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 48
|
|
| 18.03.2019, 19:25 [ТС] | |
|
вопрос решен, спасибо, дело было в том, что в конце запроса у меня еще раз была такая сортировка, которая почему то сортировала немного в другом порядке, чем в OVER. Убрал ее, и все заработала.
0
|
|
| 18.03.2019, 19:25 | |
|
Помогаю со студенческими работами здесь
8
При пустом значении убрать стили Окно с ошибкой при пустом значении textbox Остановка цикла при пустом значении ячейки Как сделать чтобы не выводились данные при пустом значении WHERE Возможно ли пропустить один из нескольких Edit при пустом значении в совместном расчете Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|