Условие в запросе

1. user638910_art60 01.06.23 13:00 Сейчас в теме
Допустим, есть упорядоченная таблица. При выборке из нее данных ставится условие на поля, к примеру: КОГДА А > Б ТОГДА В ИНАЧЕ 0. Как можно переделать условие, чтобы однозначно определить первое ИНАЧЕ в условии? Другими словами, необходима таблица с условием и строкой из первого ИНАЧЕ условия.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. odn 01.06.23 13:05 Сейчас в теме
(1) Добавить новое поле и в нем вписать это условие без "КОГДА" в итоге у вас в этом столбце будет результат сравнения булево.
3. user638910_art60 01.06.23 13:46 Сейчас в теме
(2) Как "поймать" первый результат сравнения с этим полем?
4. homer_ 78 01.06.23 14:37 Сейчас в теме
5. Zevzm 01.06.23 14:42 Сейчас в теме
Поместить в ВТ, вторым запросом выбрать Первый 1 с условием.
6. user638910_art60 01.06.23 14:45 Сейчас в теме
(5) Произвольную строку с условием в данном случае не возвратит?
7. Said-We 01.06.23 15:23 Сейчас в теме
(1) Что за вопрос?
Таблица отсортирована и упорядочена по какому полю? По этому полю и найди первую строку, у которой ИНАЧЕ = 0. Пронумеруй в конце концов и найди минимальный номер.
Если необходима первая строка, которую SQL физически просчитает, то должен тебя разочаровать. SQL декларативный язык - тут на языке SQL в СУБД прилетает какой результат ты хочешь получить от СУБД, а не указания СУБД каким алгоритмом это выполнять.
Можно так:
выбрать первые 1
....
из...
где А <= Б
упорядочить по <По чему там таблица упорядочена...?>
И не забываем, что если А и/или Б равны NULL, то любой сравнение будет давать ЛОЖЬ, кроме специализированного сравнения IS NULL.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот