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

Вниз

SQL параметры и дата   Найти похожие ветки 

 
KidMan   (2002-10-10 22:20) [0]

Мастера еще один такой необычный вопрос...
Мне нужно использовать от даты только день и месяц (для определения дня рождения сотрудников)... То есть я составляю SQL запрос который используя день и месяц текущей даты на компе выводил бы записи удовлетворяющие этой дате (но без года конечно же)... Как это можно осуществить... а самое главное как в строке SQL использовать через парам чать даты... Ведь поле само типа Date?

Заранее благодарю!


 
sniknik   (2002-10-10 22:55) [1]

используй DATEDIFF и хоть милисекунды выделяй.
DATEDIFF
Returns the number of date and time boundaries crossed between two specified dates.
Syntax
DATEDIFF ( datepart , startdate , enddate )
пример
SELECT DATEDIFF(day, pubdate, getdate()) AS no_of_days
FROM titles

p.s. только не спрашивай о базе, сам не написал этих жутко секретных сведений.


 
sniknik   (2002-10-10 23:07) [2]

Sorry поторопился, необходимая функция DATEPART.


 
Лена   (2002-10-11 09:23) [3]

select *
from table
where to_char(data,"dd.mm")= :data_param

Параметр string

И из программы :
Query.ParambyName.asstring := copy(DateToStr(Now),1,5);
Query.Open;

На самом деле реальную дату можно получить разными функциями,
просто я не помню


 
wed   (2002-10-11 10:38) [4]

Зачем такие сложности ?
select month(ddata), day(ddata) from table
а для параметров
select dname from сотрудники
where
month(ddata)=month(GetDate()) and day(ddata)=day(GetDate())

вот и будут сотрудники у которых сегодня дни рождения
для предупреждения используй day(ddata)=day(GetDate())+3


 
Johnmen   (2002-10-11 10:41) [5]

Все ответы бессмысленны, пока автор не укажет тип СУБД !


 
KidMan   (2002-10-11 23:37) [6]

Спасибо всем большое ребята!

Моя вина - забыл указать БД... (((
Обычный DBF под винды...

Это изменяет что то? Если да то скажите плиз ЧТО?

Еще раз спасибо!


 
sniknik   (2002-10-11 23:57) [7]

меняет. ты можеш использовать либо BDE+Local SQL, либо ADO+Jet для выборок. Функции из MSSql, Oracle, IB и др. тебе недоступны. Способ построения запросов. В локале много ограничений, хотя для джета функций побольше.

и кстати обычный DBF, вовсе необычен. dBase, Fox, Cliper, VisualFox не говоря о разных версиях 3, 4 и.тд. у всех свои "фенечки".
А ломать голову над вариантами только изза того что ты забыл указать никто не хочет, поэтому ответов так мало.

Еще вопросы?


 
KidMan   (2002-10-12 00:34) [8]

Когда я создавал DBF то указывал for Windows ... так что...
Нет... спасибо вопросов пока нет!

ВСЕМ СПАСИБО!



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

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

Наверх





Память: 0.45 MB
Время: 0.007 c
3-101081
dim-
2002-10-12 17:46
2002.10.31
interbase


3-101049
zavdim
2002-10-04 06:56
2002.10.31
MySQL


4-101590
PaNiC
2002-09-19 18:40
2002.10.31
Помогите!!! Отдебагить дочерний процесс!!! ;-)


14-101467
RV
2002-10-07 11:51
2002.10.31
Почему я не люблю юзеров (повзаимствовано)


4-101566
DarkSimpson
2002-09-16 23:38
2002.10.31
Панель задач





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