Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];

Вниз

Как сделать   Найти похожие ветки 

 
St@syan   (2003-11-06 11:55) [0]

Я уже задавал этот вопрос но меня не правильно поняли:((
<hr>
Как сделать "статистику" по столбцу, в столбце содержатся целые числа к. нужно сложить если год в той же записи равен указанному,
например 2003.
Сразу говорю у меня ПАРАДОКС!


 
paul_k   (2003-11-06 12:13) [1]

select sum(int_field)
from table
where year_field = 2003


 
St@syan   (2003-11-06 12:18) [2]

С помощью компонента Тэйбл


 
sniknik   (2003-11-06 12:20) [3]

это сумма (1 значение), а просили статистику т.е. много значений в течении какогото времени.

(если подойдет, то понятно почему в первый раз не правильно поняли)


 
paul_k   (2003-11-06 12:22) [4]


> St@syan (06.11.03 12:18) [2]
> С помощью компонента Тэйбл

Если по уму - никак. Не предназаначет TTable для такого


 
St@syan   (2003-11-06 12:22) [5]

А дальше


 
St@syan   (2003-11-06 12:23) [6]


> Если по уму - никак. Не предназаначет TTable для такого

Если не знаешь так молчи


 
paul_k   (2003-11-06 12:24) [7]


> St@syan (06.11.03 12:22) [5]
> А дальше

а что может быть дальше?
посмотри в хелпе, у какого компонента источником данных может быть запрос, а не только таблица


 
St@syan   (2003-11-06 12:25) [8]

Может скажешь где хелп на русском


 
bushmen   (2003-11-06 12:27) [9]

>sniknik

>в столбце содержатся целые числа к. нужно сложить если год в >той же записи равен указанному,
>например 2003.


А как это по-другому то можно понять?


 
paul_k   (2003-11-06 12:28) [10]


> St@syan (06.11.03 12:25) [8]
> Может скажешь где хелп на русском

В любом более-менее крупном книжном магазине на полке - "Языки программирования"


 
sniknik   (2003-11-06 12:29) [11]

bushmen © (06.11.03 12:27) [9]
да вот это меня и смущало. просит статистику по одному числу.

St@syan (06.11.03 12:22) [5]
> А дальше
руками код набери, банальный цикл по талице с условием и суммированием.


 
St@syan   (2003-11-06 12:29) [12]

Просмотреть нужно весь столбец,( ты мне говоришь как на TQuery)


 
St@syan   (2003-11-06 12:31) [13]


> В любом более-менее крупном книжном магазине на полке -
> "Языки программирования"

в инете


 
paul_k   (2003-11-06 12:32) [14]


> St@syan (06.11.03 12:29) [12]
> Просмотреть нужно весь столбец,( ты мне говоришь как на
> TQuery)

Не понятно. тебе нужно сумму только для одного года или для каждого года ?


 
paul_k   (2003-11-06 12:33) [15]


> St@syan (06.11.03 12:31) [13]
>
> > В любом более-менее крупном книжном магазине на полке
> -
> > "Языки программирования"
>
> в инете

а что в инете нет книжных магазинов?


 
St@syan   (2003-11-06 12:33) [16]


> Не понятно. тебе нужно сумму только для одного года или
> для каждого года?

для указанного пользователем


 
St@syan   (2003-11-06 12:33) [17]


> а что в инете нет книжных магазинов?

СКАЧАТЬ


 
bushmen   (2003-11-06 12:36) [18]

>St@syan

А тебе не все-равно как это будет делать TQuery? Это однозначно будет намного быстрее, чем самому :))) Чем тебя TQuery не устраивает? Или тебе нравится весь объем таблицы за собой таскать ради одного только значений?


 
paul_k   (2003-11-06 12:38) [19]

ну таки передаеш запросу вместо 2003 то что пользователь ввел
with query do
begin
sql.add("select sum(int_field)");
sql.add("from table");
sql.add("where year_field = "+то что ввел усер);
end

или
select year_field,sum(int_field) as year_sum
from table
group by year_field


 
Zacho   (2003-11-06 12:39) [20]

2 St@syan :
А может все-таки англо-русский словарь купишь ? И пару учебников.
Пойми, научиться программировать, не прилагая к этому никаких усилий - невозможно.


 
paul_k   (2003-11-06 12:40) [21]


> St@syan (06.11.03 12:33) [17]
>
> > а что в инете нет книжных магазинов?
>
> СКАЧАТЬ

ещё скажи что на халяву...


 
St@syan   (2003-11-06 12:40) [22]


> ну таки передаеш запросу вместо 2003 то что пользователь
> ввел
> with query do
...
> select year_field,sum(int_field) as year_sum
> from table
> group by year_field

ну это другое дело


 
bushmen   (2003-11-06 12:40) [23]

>paul_k ©

Если первый вариант, то лучше, мне кажется, использовать параметризованный запрос ?!


 
St@syan   (2003-11-06 12:41) [24]


> > St@syan (06.11.03 12:33) [17]
> >
> > > а что в инете нет книжных магазинов?
> >
> > СКАЧАТЬ
>
> ещё скажи что на халяву...

А ты как думал? :)))


 
paul_k   (2003-11-06 12:43) [25]

2 bushmen
параметр - тоже вариант, но вот только вопрос: в чем преимущество?
действий вроде одно и тоже количество
1. закрыть запрос
2. присвоить значение параметра / собрать строку запроса
3. открыть запрос
Или я в чем-то не прав?


 
bushmen   (2003-11-06 12:56) [26]

>paul_k ©

Ты упускаешь две вещи. Когда у тебя запрос с параметрами:
1. При многократном использовании кода меньше пишешь.
2. Ты выполняешь метод Prepare один раз, а так постоянно.

P.S.
>1. закрыть запрос
1.5 Очистить запрос>
2. присвоить значение параметра / собрать строку запроса
>3. открыть запрос


 
paul_k   (2003-11-06 13:20) [27]

1.5 под вопросом
sql.text:=

> 2. Ты выполняешь метод Prepare один раз, а так постоянно

а после присвоения параметра этот метод не исполняется?
не знал...


 
bushmen   (2003-11-06 14:13) [28]

>paul_k ©
Согласен. Я это для SQL.Add написал



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.01 c
7-90136
ИЛЕЙ
2003-09-17 13:40
2003.11.27
Реагирование на завершение работы


1-89862
Multy
2003-11-16 07:48
2003.11.27
Открытие окон подобно word


1-89913
R
2003-11-18 04:26
2003.11.27
Скрытие формы


6-90019
Dmitry V. Averuanov
2003-10-02 14:07
2003.11.27
Вопрос по компоненту TIDMappedPOrtTCP


4-90181
stainer
2003-10-05 14:45
2003.11.27
иконка 16 на 16





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский