powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FDQuery.Filter
7 сообщений из 7, страница 1 из 1
FDQuery.Filter
    #39958237
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если к SQL-серверу послать запрос вида
Код: sql
1.
SELECT * FROM TABLE WHERE SomeField <> 0;

то он не вернёт записи, для которых SomeField IS NULL.

А вот если сделать
Код: pascal
1.
FDQuery.Filter := 'SomeField <> 0';

то он эти записи покажет.

Вопрос: можно ли как-то сделать, чтобы FDQuery.Filter работал так же как и WHERE?..
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958239
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нельзя, все БД разные, а FD один и работает на клиенте. Ну или можно, но нужно ?
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958244
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Arefiev
Нельзя, все БД разные, а FD один и работает на клиенте. Ну или можно, но нужно ?

Т.е. правило что результат сравнения null = 0 является null - это не стандарт SQL?..
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958248
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp,

А если прямо в строку фильтра и подписать желаемое?
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958260
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F
alekcvp,
А если прямо в строку фильтра и подписать желаемое?

В смысле? 'AND SomeField IS NOT NULL' что-ли?
Я просто хотел чтобы фильтр в компоненте и фильтр в запросе одинаково отрабатывали...
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958264
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp,

Но ты же уже понял, что движок сервера и движок локального фильтра имеют разную реализацию данного фукционала.
Не хочешь разбираться с дополнительными возможностями второго, окостыль прямо в запросе:
select coalesce(SomeField, 0) <....>.
...
Рейтинг: 0 / 0
FDQuery.Filter
    #39958480
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F
alekcvp,
Но ты же уже понял, что движок сервера и движок локального фильтра имеют разную реализацию данного фукционала.
Не хочешь разбираться с дополнительными возможностями второго, окостыль прямо в запросе:
select coalesce(SomeField, 0) <....>.
Coalesce влияет на вид возвращаемых данных, а это не правильно. На данный момент я решил просто к каждому условию для фильтра типа 'SomeField <> 0' принудительно дописывать ' AND SomeField IS NOT NULL', на результаты от SQL-сервера это всё равно не влияет, а фильтр в компоненте начинает работать как ожидается.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FDQuery.Filter
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]