Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2009, 13:22   #11
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию

вот решение.
Код:
var
Present: TDateTime;
Present1: TDateTime;
begin
Present:= DateTimePicker.Date;
Present1:= DateTimePicker.Date-1;
sum_objects.SQL.Clear; //sum_objects-adoquery
sum_objects.SQL.Add('select t1.data,t1.name,t1.sum as X,');
sum_objects.SQL.Add('t2.sum as x_1');
sum_objects.SQL.Add('from mytable t1');
sum_objects.SQL.Add('inner join mytable t2 on');
sum_objects.SQL.Add('t2.data='+''''+FormatDateTime( 'dd.mm.yyyy', Present1)+'''');
sum_objects.SQL.Add('and t2.name=t1.name');
sum_objects.SQL.Add('where t1.data='+''''+FormatDateTime( 'dd.mm.yyyy', Present)+'''');
и без всяких ХП..

Последний раз редактировалось kate158; 25.05.2009 в 17:21.
kate158 вне форума Ответить с цитированием
Старый 25.05.2009, 13:58   #12
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

только в одном запросе у тебя не получилось показать и поле для 7 дней назад

так что в твоем случае ХП рулит

Последний раз редактировалось soleil@mmc; 25.05.2009 в 14:11.
soleil@mmc вне форума Ответить с цитированием
Старый 25.05.2009, 14:31   #13
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
Смех

ну, если немного извратиться, хотя не знаю, насколько правилен этот код в скл (да простят меня все коддеры скл), но вроде и для семи работает
Код:
var
Present: TDateTime;
Present1: TDateTime;
Present2: TDateTime;
begin
Present:= DateTimePicker.Date;
Present1:= DateTimePicker.Date-1;
Present2:= DateTimePicker.Date-7;
sum_objects.SQL.Add('select t1.data,t1.name,t1.sum as X,');
sum_objects.SQL.Add('t2.sum as x_1,t3.sum as x_7');
sum_objects.SQL.Add('from mytable t1');
sum_objects.SQL.Add('inner join mytable t2 on');
sum_objects.SQL.Add('t2.data='+''''+FormatDateTime( 'dd.mm.yyyy', Present1)+'''');
sum_objects.SQL.Add('and t2.name=t1.name');
sum_objects.SQL.Add('inner join mytable t3 on');
sum_objects.SQL.Add('t3.data='+''''+FormatDateTime( 'dd.mm.yyyy', Present2)+'''');
sum_objects.SQL.Add('and t3.name=t1.name');
sum_objects.SQL.Add('where t1.data='+''''+FormatDateTime( 'dd.mm.yyyy', Present)+'''');

Последний раз редактировалось kate158; 25.05.2009 в 14:36.
kate158 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вычисляемые поля Nikola БД в Delphi 4 19.11.2008 13:26
Хранимая процедура не работает! Только_Учусь SQL, базы данных 6 08.09.2008 09:22
Хранимая процедура. nimf БД в Delphi 2 22.04.2008 13:16
не работает хранимая процедура yulia БД в Delphi 11 28.05.2007 19:00
Вычисляемые поля Defort БД в Delphi 0 03.12.2006 11:18