|
Порядок условий в запросе | ☑ | ||
---|---|---|---|---|
0
mishkerdon
03.07.14
✎
10:07
|
Помогите пожалуйста, возникла такая проблема - через конструктор запросов создаю запрос, ставлю условие ((Реквизит1=Истина И Реквизит2=10) ИЛИ (Реквизит3=ЛОЖЬ)). Т.е. порядок вычисления условий ставлю собственный. Но когда нажимаю "Ok" в редакторе условия, он удаляет эти скобки, и при закрытии конструктора в сформированном тексте запросе скобок тоже нет. Как можно сделать так, чтобы скобки не пропадали?
|
|||
1
Wobland
03.07.14
✎
10:08
|
с логикой не дружим? ну поправь текст сам
|
|||
2
SeraFim
03.07.14
✎
10:08
|
В данной ситуации твои скобки ни на что не влияют
|
|||
3
Wobland
03.07.14
✎
10:09
|
(2) у автора психологическая драма, очень даже влияют
|
|||
4
fmrlex
03.07.14
✎
10:10
|
(3) Просто автора били в детстве за отсутствие скобок.
|
|||
5
mishkerdon
03.07.14
✎
10:11
|
(2) почему не влияют? Разве ((Условие1 И Условие2) ИЛИ (Условие3)) не отличается от ((Условие1) И (Условие2 ИЛИ Условие3)) и от (Условие1 И Условие2 ИЛИ Условие3)???
|
|||
6
Wobland
03.07.14
✎
10:12
|
(5) истина
|
|||
7
anatoly
03.07.14
✎
10:12
|
Реквизит1 И Реквизит2 = 10 ИЛИ НЕ Реквизит3
зачем вообще скобки?? |
|||
8
Wobland
03.07.14
✎
10:12
|
начинаем изучать слово "приоритет операций"
|
|||
9
bolobol
03.07.14
✎
10:12
|
Проблема в читабельности условия? Ну что ж... некоторые вещи сделаны, да, для повышенной соображалки, а не для обычных пользователей.
|
|||
10
catena
03.07.14
✎
10:15
|
(5)2*(2+2) - Это одно.
а вот (2*2)+2 и 2*2+2 - не отличаются. |
|||
11
rphosts
03.07.14
✎
10:16
|
(0) тема ниочём. Если база не файловая, то базовод сам построит план выполнения запроса и на порядок указаный вами ему наплевать (и как правило он действительно лучше знает как выполнять запрос) и даже если вы уверены что можете сделать подсказку оптимизатору - из 1С это не работает.
|
|||
12
mishkerdon
03.07.14
✎
10:30
|
(10) подождите,
так я и хочу написать (2+2)*2. А по итогу получается 2+2*2. Или условие "ИЛИ" в 1С вычисляется последним? |
|||
13
anatoly
03.07.14
✎
10:37
|
(12)
приоритет логических операций: 1 - НЕ, 2 - И, 3 - ИЛИ как можно писать запросы не зная матчасти? |
|||
14
DS
03.07.14
✎
10:37
|
(12) Сказали же: приоритет операторов...
|
|||
15
catena
03.07.14
✎
10:38
|
(12)И - это умножение.
Истина И Ложь = Ложь. |
|||
16
catena
03.07.14
✎
10:39
|
Конъю?нкция (от лат. conjunctio союз, связь) — логическая операция, по своему применению максимально приближенная к союзу «и». Синонимы: логи?ческое «И», логи?ческое умноже?ние, иногда просто «И».
Дизъю?нкция (лат. disjunctio — разобщение), логи?ческое сложе?ние, логи?ческое ИЛИ, включа?ющее ИЛИ; иногда просто ИЛИ — логическая операция, по своему применению максимально приближённая к союзу «или» в смысле «или то, или это, или оба сразу»[1]. |
|||
17
Wobland
03.07.14
✎
10:45
|
(12) хочешь - пиши. я не против
|
|||
18
Jaap Vduul
03.07.14
✎
10:52
|
Условия могут определяться и как более сложные логические выражения, где фигурируют простые логические выражения, соединенные между собой с помощью логических операторов И, ИЛИ, НЕ.
Логические операторы имеют приоритет: Самый высокий приоритет имеет логический оператор НЕ; Следующим по приоритету является оператор И; Самый низкий приоритет у оператора ИЛИ. В условиях сначала вычисляются простые логические выражения, затем операции НЕ, затем операции И, в последнюю очередь – операции ИЛИ. Для того, чтобы обеспечить другой порядок вычислений, можно использовать круглые скобки (). -------------------------------------------------------------------------------- © ООО "1С", 1996-2011. Все права защищены. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |