Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.06.2009, 19:59
Mulder Mulder вне форума
Прохожий
 
Регистрация: 22.06.2009
Сообщения: 3
Репутация: 10
По умолчанию ADO прилепить функцию

Привет Народ в общем нужно прилепить одну функцию..чтобы программа следила за своевременным прохождением курсов...тоесть вводишь год она берёт из базы тех сотрудников которые должны пройти эти курсы что то ни как не могу сообразить как это сделать....исходник программы с базой..могу выложить заранее спасибо
Ответить с цитированием
  #2  
Старый 22.06.2009, 20:33
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Предположим, что есть таблица сотрудников и есть таблица прохождения курсов.
Сотрудники (Код,ФИО)
Курсы (Код,КодСотрудника,ДатаПрохождения,Результат)
Тогда выбрать сотрудников которые непроходили курс в каком-то году можно так:
Код:
SELECT Сотрудники.ФИО, Курсы.КодСотрудника, Курсы.ДатаПрохождения
FROM Сотрудники LEFT JOIN Курсы ON Сотрудники.Код = Курсы.КодСотрудника
WHERE (((Year([ДатаПрохождения]))<>[Year])) OR (((Курсы.КодСотрудника) Is Null));
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #3  
Старый 22.06.2009, 21:04
Mulder Mulder вне форума
Прохожий
 
Регистрация: 22.06.2009
Сообщения: 3
Репутация: 10
По умолчанию

Таблица представленна в виде отдельных колонок в виде
Fio datarozhd kursi
в поле Kursi введены числовые данные в виде чч.мм.гггг.

прикрепляю DB
Вложения
Тип файла: zip db1.zip (11.9 Кбайт, 5 просмотров)

Последний раз редактировалось Mulder, 22.06.2009 в 21:13.
Ответить с цитированием
  #4  
Старый 22.06.2009, 21:41
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Вы хотите сказать, что вот это:
Цитата:
МПА "Туран профи", 2006г.
в формате чч.мм.гггг
если я конечно правильно понял, это имелось ввиду dd.mm.yyyy
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.

Последний раз редактировалось Страдалецъ, 22.06.2009 в 21:45.
Ответить с цитированием
  #5  
Старый 23.06.2009, 06:02
Mulder Mulder вне форума
Прохожий
 
Регистрация: 22.06.2009
Сообщения: 3
Репутация: 10
По умолчанию

Сори,перепутал с окончанием Вуза)так что можно сделать с такой таблицей?
Ответить с цитированием
  #6  
Старый 23.06.2009, 09:15
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Ну для начала, завести отдельные поля под даты, окончания вуза и прохождения курса.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #7  
Старый 23.06.2009, 09:38
PiboDIE PiboDIE вне форума
Прохожий
 
Регистрация: 17.06.2009
Сообщения: 28
Репутация: 10
По умолчанию

Цитата:
Сообщение от Mulder
Привет Народ в общем нужно прилепить одну функцию..чтобы программа следила за своевременным прохождением курсов...тоесть вводишь год она берёт из базы тех сотрудников которые должны пройти эти курсы что то ни как не могу сообразить как это сделать....исходник программы с базой..могу выложить заранее спасибо
Не очень понятно какие критерии участвуют в определении необходимости прохождения курса. Если только дата, то простейший запрос к базе с условием WHERE date_field<selected_date. В свою очередь если критическую важность играет только год, то selected_date можно сформировать так selected_date := '01.01.'+YearOf(Calendar.Date)
Где-то встречал такой вариант: SELECT something FROM source WHERE EXTRACT(YEAR FROM date_field)='+YearOf(Calendar.Date), но в данном случае запрос зависит от используемой СУБД, поскольку в разных СУБД выделение года может производиться отличными друг от друга способами.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter