Показать сообщение отдельно
  #19  
Старый 12.03.2013, 23:45
Chinvad Chinvad вне форума
Прохожий
 
Регистрация: 23.11.2011
Сообщения: 23
Репутация: 10
По умолчанию

Нашла таки проблему )
Т.к. дорабатываю чужую программу, столкнулась со многими неудобствами. Одно из них - русскоязычные названия полей в БД. Код весьма обширный, поэтому в рассматриваемой таблице Dohod я для начала переименовала поля, которые непосредственно нужны в запросе. Т.е. "data" и "summa". Но остались еще и такие, как "ФИО_сотрудника" и прочая ерунда. Так вот в таком виде запрос на сумму по всему столбцу
Код:
DM.ADOQuery1.SQL.Add('SELECT SUM(summa) AS D FROM Dohod');
а так же фильтр по датам
Код:
DM.ADOQuery1.SQL.Add('SELECT * FROM Dohod WHERE data BETWEEN :first_date AND :last_date');
работали! Это и сбило меня с толку ) Казалось бы, почему запросы по отдельности работают, а если соединить их вместе,
Код:
DM.ADOQuery1.SQL.Add('SELECT SUM(summa) AS D FROM Dohod WHERE data BETWEEN :first_date AND :last_date');
то получается 0. Но, как оказалось, запрос SUM с условиями НЕ РАБОТАЕТ при наличии хотя бы одного поля с русским названием в таблице. Сомневаюсь, что мой опыт пригодится и кто-то когда-то будет еще так же тупить ) Но обязана была отчитаться перед милыми людьми, что пытались мне помочь. Спасибо, каюсь )
Ответить с цитированием