Вход | Регистрация
 

Сравнение значения выборки со всеми остальными

Сравнение значения выборки со всеми остальными
Я
   BaldKiwi
 
16.02.21 - 11:38
Добрый утро, видимо еще не проснулся, но вопрос достаточно глупый скорее всего, у меня есть запрос, Допустим Выборка = Запрос.Выполнить().Выбрать();   Как мне из выборки первое значение присвоить переменной, а после в цикле Выборка.Следующий() , Проверять равно-ли первое значение всем остальным? что-то встал на месте и не могу сообразить
 
 Партнерская программа EFSOL Oblako
   hhhh
 
1 - 16.02.21 - 11:44
(0) сравнение идет при помощи знака "=". Ничего другого пока не придумали.
   BaldKiwi
 
2 - 16.02.21 - 11:46
(1) Это понятно, но если я после Выборка.Следущий напишу Переменная = Выборка.НужноеПоле, а после уже условие буду писать, то в принципе смысла от моей Переменной нет, она постоянно будет принимать значение такое же как у выборки
   BaldKiwi
 
3 - 16.02.21 - 11:47
(1) не писать же Выборка.Следующий, присваивать переменной значение, а после делать цикл Выборка.Следующий()
   mkalimulin
 
4 - 16.02.21 - 11:48
(0) Два способа. Либо две переменные  ЗначениеПервого и ЭтоНачало, либо присвоить на старте "неопределено"
   Михаил Козлов
 
5 - 16.02.21 - 11:48
этоПервая = ИСТИНА;
ПОКА выборка.Следующий() Цикл
  Если этоПервая Тогда переменная = выборка....; этоПервая = ЛОЖЬ;
   mkalimulin
 
6 - 16.02.21 - 11:48
(3) А можно и так.
   BaldKiwi
 
7 - 16.02.21 - 11:49
(4) (5) Всё спасли, что-то голова с утра не работает вообще, спасибо
   Василий Алибабаевич
 
8 - 16.02.21 - 11:50
(1) Оператор присваивания выглядит, стсуко, точно также : "=".

(2)
Примерно так:
ПервоеЗначение = 0;
Пока Выборка.Следующий() Цикл
  Если ЗначениеЗаполнено(ПервоеЗначение) Тогда
    СравнитьСПервым...
  Иначе
    ПервоеЗначение = Выборка.<ИмяПоля>
  КонецЕсли;
КонецЦикла;
   Михаил Козлов
 
9 - 16.02.21 - 11:52
НЕОПРЕДЕЛЕНО короче выходит.
   Малыш Джон
 
10 - 16.02.21 - 12:02
(0) Такой вариант не предлагать?
Если Выборка.Следующий() Тогда
    <присваиваем>
КонецЕсли;
Пока Выборка.Следующий() Цикл
    <сравниваем>
КонецЦикла;
   BaldKiwi
 
11 - 16.02.21 - 12:32
(10) Такой вариант не совсем оптимальный же, зачем делать 2 цикла, можно сделать короче


Выборка.Следующий();
Переменная = Выборка.Поле1;
Пока Выборка.Следующий Цикл
Если ... = ... Тогда
КонецЦикла
   BaldKiwi
 
12 - 16.02.21 - 12:33
(8) Сделал примером с Истина/Ложь
(9) можно и так)
   Малыш Джон
 
13 - 16.02.21 - 13:13
(11) а где в (10) два цикла? О_о
   Kassern
 
14 - 16.02.21 - 13:18
(11) в твоем результате будешь косяк, если к примеру выборка пустой окажется
   Kassern
 
15 - 16.02.21 - 13:19
(14) блин опечатался, щас еще за распространение забанаят....

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.