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

Вниз

Собственно вопросов несколько   Найти похожие ветки 

 
Shved   (2002-11-26 22:24) [0]

Первый вопрос:
Как написать SQL-запрос, чтобы таблица выводила все поля определенного промежутка времени (поле "Дата" в таблице в форме DD.MM.YY, свойство поля - D)?
Второй вопрос:
Какие операции с датами можно выполнять и как? Например, вычитание, сравнение и т.п. Если можно, то напишите в коде.
Третий вопрос:Как просуммировать все значения таблицы в одном поле (формат поля - N)?
Четвертый вопрос:
Какой вид должен быть у выражения, выдающего в Chart или DBChart (кстати, что лучше использовать?) значения строк в столбце таблицы?
Пятый вопрос:
Все книги по Delphi рекомендуют для создания отчетов использовать TReport, однако я не могу его найти у себя. Это значит, что он не установлен или в Delphi5 (у меня именно эта версия) его нет?

Возможно, все эти вопросы покажутся слишком дилетантскими, но я не нашел на них ответов ни в одной книге, поэтому буду признателен за помощь. А если кто знает где об этих и схожих вопросах можно прочитать, то киньте ссылочку.


 
Johnmen   (2002-11-26 23:00) [1]

В любой, самой плохонькой книжонке по программированию баз данных на Delphi (типа "... для чайников") есть все ответы на все твои вопросы. Генратор отчетов есть в любой версии D.


 
Shved   (2002-11-26 23:09) [2]

Если бы были, то я бы не спрашивал... Правда, конкретно книг именно по программированию БД у меня нет - есть несколько по Delphi вообще и в них разделы по БД.
Так что все-таки прошу как-нибудь все-таки помочь.


 
Anatoly Podgoretsky   (2002-11-26 23:10) [3]

Ты бы накопил побольше вопросов, а то неудобно только по 5 отвечать.


 
sniknik   (2002-11-27 08:42) [4]

Shved © (26.11.02 23:09)
книга должна быть именно по Базам Данных на Дельфи. уж слишком большая разница, в простом описании языка ты этого не найдеш, зато есть Хелр в дельфях! смотри в папке хелпов (рядом с дельфями) конкретно по LOCAL SQL или поищи файл справки LOCALSQL.HLP.


 
Elv   (2002-11-27 09:43) [5]

Shved © (26.11.02 22:24)
Как написать SQL-запрос, чтобы таблица выводила все поля определенного промежутка времени (поле "Дата" в таблице в форме DD.MM.YY, свойство поля - D)?
Воспользоваться between

Какие операции с датами можно выполнять и как? Например, вычитание, сравнение и т.п. Если можно, то напишите в коде.
Можно сравнивать, вычитать и т.д.

Третий вопрос:Как просуммировать все значения таблицы в одном поле (формат поля - N)?
Select Sum()...

не нашел на них ответов ни в одной книге, поэтому буду признателен за помощь. А если кто знает где об этих и схожих вопросах можно прочитать, то киньте ссылочку.
Зашел на яндекс ввел: введение в SQL
Первые две ссылки привели на "Введение в SQL" Мартин Грубер.

Зашел на яндекс ввел: работа с DATETIME в Дельфи
Первая ссылка "алгоритм расчета промежутка между двумя датами".






 
Shved   (2002-11-27 21:52) [6]

Во. Спасибо за помощь. Только вы все отвечаете так, как будто подразумевается, что все всё должны это знать. А я вот не знаю... :( Поэтому мне пока проще разбираться с конкретным кодом, чем с фразой "between"... Что с ней делать-то?

А по поводу расчета суммы столбца у меня такой вопрос (уточняющий) - кроме как использования SQL (в частности Query) нельзя подсчитать? Ведь как я понимаю, при select sum() формируется новый Field, который нужно к чему-то привязать, а мне хотелось бы сразу результат выводить например в TEdit.

А за ссылки отдельное спасибо. Будем изучать.


 
MsGuns   (2002-11-27 22:03) [7]

>Shved © (27.11.02 21:52)

При любом TQuery (или ему подобном), если он содержит оператор SELECT, возращается НД, который можно связать через TDataSource с ЛЮБЫМ DB-контролом, в т.ч. и TDBEdit. Более того, через переоткрытие этого Query (а иногда просто через Refresh), можно АВТОМАТИЧЕСКИ обновлять визуадьные детали интерфейса (например, итоговую сумму по колонке грида), не заботясь о том, что там будет ПЕРЕСЧИТАННАЯ инфа.
Можно, конечно пересчитать в цикле (с получением закладки и последующем в нее возвратом), но это далеко не всегда лучше (особенно для сетевых приложений)


 
irenfd   (2002-11-28 04:54) [8]

А фраза Between это "между" - в итоге: WHERE DocDate Between #12.02.2002# AND #25.11.2002# означает Где ДатаДокумента Между 12.02.2002 И 25.11.2002


 
Shved   (2002-11-28 22:50) [9]

Большое фэнкс. Еще можно подобные примитивные вопросы задавать или начнете тапочком кидаться? :)


 
irenfd   (2002-11-29 07:12) [10]

Если все сразу будут умными рождаться - придется форум закрывать :))))

Второй вопрос:
Какие операции с датами можно выполнять и как? Например, вычитание, сравнение и т.п. Если можно, то напишите в коде.
Второй ответ
Дата- это число с двойной точностью, где целая часть - дата,
а дробная - время (алгоритм пересчета наизусть не запоминал)
Делай с этим числом все, что нужно, 1,0 = 1 день 0 часов 0 минут 0 секунд. Иногда придется приводить тип в Float и обратно в DateTime. Если нужна только дата - возьми Int(DateTime) и. т. д.

Третий вопрос:Как просуммировать все значения таблицы в одном поле (формат поля - N)?
Ну здесь мне не совсем ясна задача.

Пятый вопрос:
Все книги по Delphi рекомендуют для создания отчетов использовать TReport, однако я не могу его найти у себя. Это значит, что он не установлен или в Delphi5 (у меня именно эта версия) его нет?

Возможно, все эти вопросы покажутся слишком дилетантскими, но я не нашел на них ответов ни в одной книге, поэтому буду признателен за помощь. А если кто знает где об этих и схожих вопросах можно прочитать, то киньте ссылочку.

Пятый ответ:
Генератор отчетов PReport
http://www.preport.narod.ru/index.html
Хорошая штука, да и с исходными текстами - есть на чем поучиться.


 
Shved   (2002-12-02 19:20) [11]

Можно про дату по-подробнее? А то у меня тут такой трабл, что ничего не могу (и не знаю!) сделать... Даже вон какая группа поддержки организовалась в посте "Поле "дата". Не идет выборка".



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

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

Наверх




Память: 0.48 MB
Время: 0.008 c
1-61550
roman_tutov
2002-12-08 22:29
2002.12.19
фильтр ввода в ячейку dbgrid


1-61661
Balu
2002-12-06 17:35
2002.12.19
Разное поведение Variant в D5 и D6


3-61498
serg_r_a
2002-12-02 12:18
2002.12.19
Открытие БД без индекса


1-61527
Alex-Barmaley
2002-12-09 12:41
2002.12.19
Компоненты в таблице


1-61640
Checist [root]
2002-12-07 06:10
2002.12.19
Нужен дельный совет





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский