Текущий архив: 2008.06.22;
Скачать: CL | DM;
Вниз
Не работает простой запрос Найти похожие ветки
← →
Кирей (2008-05-28 11:56) [0]есть простенький запрос
select d.ls, d1.npok, d3.lastppok
from ((("abon.dbf" d left join "lich.dbf" d1 on d.ukod=d1.ukod) left join "\05_2008\nach.dbf" d2 on d.ls=d2.ls) left join "chlich.dbf" d3 on d.ls=d3.ls) left join "\06_2008\obhod" d4 on d.ls=d4.ls
where (d3.datech is not null) and (d3.datech BETWEEN iif(d2.dateout is not null, d2.dateout, d.lastfee) and d4.data)
если вместоiif(d2.dateout is not null, d2.dateout, d.lastfee)
поставить d2.dateout, все работает,
если вместоd3.datech BETWEEN iif(d2.dateout is not null, d2.dateout, d.lastfee
поставитьiif(d2.dateout is not null, 1, 2)=1
, тоесть по отдельности BETWEEN и iif работает, а вместе нет, говорит ошибка Missing coma (,).
Где я не прав? Использую ADO
← →
Правильный_Вася (2008-05-28 12:01) [1]
> Использую ADO
субд?
← →
Кирей (2008-05-28 12:05) [2]FOX
← →
Правильный_Вася (2008-05-28 12:07) [3]какая версия?
← →
Кирей (2008-05-28 12:11) [4]ODBC Provider=VFPOLEDB.1
← →
Правильный_Вася (2008-05-28 12:14) [5]версия фокса
и раз уж о провайдере речь пошла, то это не версия, это название
← →
Кирей (2008-05-28 12:20) [6]таблицы VFP3, прога писалась наверно на фоксе 6, типы данных совпадают, все Date
← →
DiamondShark © (2008-05-28 12:38) [7]скорее всего, глюк парсера, который путает ключевое слово BETWEEN со встроенной функцией BETWEEN()
воспользуйся парой <= и >= вместо BETWEEN.
← →
Кирей (2008-05-28 12:47) [8]
> воспользуйся парой <= и >= вместо BETWEEN.
Блин, так работает, а я полдня ковырялся, думал что это моя ошибка
← →
Кирей (2008-05-28 12:47) [9]
> DiamondShark ©
Пасиба
Страницы: 1 вся ветка
Текущий архив: 2008.06.22;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.06 c