Оператор OR в select

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

kostya_100
Сообщения: 14
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахстан
Контактная информация:

Оператор OR в select

Сообщение kostya_100 »

Можно ли как-нибудь выполнить оператор or в условие where(())?
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Оператор OR в select

Сообщение Den »

тока в узловом фильтре...
kostya_100
Сообщения: 14
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахстан
Контактная информация:

Re: Оператор OR в select

Сообщение kostya_100 »

А что это?

Разве нельзя так написать
WHERE (A = 2) OR (A = 3)
?

или надо обязательно писать
WHERE NOT ((A <> 2) AND (B <> 3))
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Оператор OR в select

Сообщение Den »

Сформулируй лучше словами что ты хочешь сделать и в чем твоя проблема...
kostya_100
Сообщения: 14
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахстан
Контактная информация:

Re: Оператор OR в select

Сообщение kostya_100 »

например where ((Katmc.Nrec==12 OR KatMC.Nrec==11))
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Оператор OR в select

Сообщение Den »

индекс можно только явно задавать или в диапозоне (and). OR ,конечно, так не прокатит..
kostya_100
Сообщения: 14
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахстан
Контактная информация:

Re: Оператор OR в select

Сообщение kostya_100 »

почему конечно?
я считаю это серьёзной недоработкой

например в sql же есть такой оператор
Ged
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Оператор OR в select

Сообщение Ged »

Select
Lschet.TabN,
Persons.Fio
From
Lschet,
Persons
Where
((
LsChet.Tperson /== Persons.Nrec
And
(
101 = LsChet.TabN
Or
102 = LsChet.TabN
)
))
;
IgorA
Постоянный обитатель
Сообщения: 192
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Красноярск

Re: Оператор OR в select

Сообщение IgorA »

условие where ((....==...)) пишется, когда нужно связать таблицы, или наложить фильтр с учетом индекса (что бы быстро работало), например ((12==KatMC.Nrec)).
Так наложить фильтр по нескольким значениям не получиться.

А вот так - (Katmc.Nrec=12 OR KatMC.Nrec=11) - работает, но неивестно какой индекс используется.

p.s. Такой извращенный синтаксис SQL я встречал только в Галактике, в нормальном SQL все проще и понятнее.
Ged
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Оператор OR в select

Сообщение Ged »

>А вот так - (Katmc.Nrec=12 OR
> KatMC.Nrec=11)
> - работает, но неивестно какой индекс
>используется

А так вообще ни какой индекс не используется.

>p.s. Такой извращенный синтаксис SQL я встречал

А в руководстве по Галактическому SQL так и написано, что это ПОДМНОЖЕСТВО SQL и в нем реализовано только часть операторов.
И пока не претендует на FULL SQL.
IgorA
Постоянный обитатель
Сообщения: 192
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Красноярск

Re: Оператор OR в select

Сообщение IgorA »

Это ((...)) не ПОДМНОЖЕСТВО SQL, такого вообще нигде нет.
Везде используется либо, для жесткой связки таблиц, - оператор =, либо, для мягкой связки, - оператор join (который вообще не смешан с where).

Кстати, что такое нормальный SQL, можно посмотреть в хелпе к первасиву.

p.s. А что такое агрегатные функции, в Галактике вообще не знают.
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

Re: Оператор OR в select

Сообщение Deinis »

В документации написано, что это "расширенное подмножество языка SQL".
В другом месте сказано, что это "диалект известного языка SQL".
:D
Galpro_tut
Постоянный гость
Сообщения: 68
Зарегистрирован: 29 мар 2005, 17:49

Re: Оператор OR в select

Сообщение Galpro_tut »

Жеские дебаты
В Галактике начальный SQL ASCII и требовать от него чего ибо бессмыслено. Это нормально иначе разрабочики Галактики сделали бы еще один MS SQL :))
galpro.itpark.ru
IgorA
Постоянный обитатель
Сообщения: 192
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Красноярск

Re: Оператор OR в select

Сообщение IgorA »

А зачем этот галактический посредник нужен?
Почему нельзя напрямую обращаться к СУБД, на которой работаем?
Если сложно разрабатывать (и сопровождать) задачу под 3 платформы, то лучше остановиться на одной, и использовать все ее возможности.
Ged
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: СУДБ

Сообщение Ged »

Сравните цену на СУБД, и стоимость сопровождения... Еще гдет на форуме уже обсуждалось быстродействие Галки на разных платформах и когда разница ощутима...
Ответить