![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как вывести дату без времени(21.01.2002) а не 21.01.2002 18:00:00 [D6, MSSQL]
vasilly © (2002-08-02 17:36:00)Как вывести дату без времени(21.01.2002) а не 21.01.2002 18:00:00
для того чтобы корректно составить условие...
проблема в том что пользователь не должен видеть время...!
кто знает?
3JIA9I CyKA (2002-08-06 11:06:00) [1]Ответ на этот вопрос зависит от того, на какой стороне (C/S) это надо сделать.
Juve (2002-08-06 00:15:00) [2]Народ, ну во-первых FormatDateTime......а во вторых можно небольшой изврат:
StrToDate(DateTimeToStr(Реальная дата))- тоже работает! Может я чего не понял?
3JIA9I CyKA (2002-08-05 17:37:00) [3]Это было "получить только дату"
вывести - это так:
convert(varchar(10), GetDate(), 104)
3JIA9I CyKA (2002-08-05 17:34:00) [4]convert(datetime, substring(convert(binary(8), GetDate()), 1, 4)+0x00000000)
sniknik (2002-08-05 17:04:00) [5]ну это то легко решить
DECLARE @DATE DATETIME
SET @DATE=GETDATE()
SELECT CAST(ROUND(CAST(@DATE AS FLOAT), 0, 1) as smalldatetime)
будет и после полудня нормально давать :-).
понимать правильно!
Luchkin (2002-08-05 16:26:00) [6]Ма-а-а-аленькое примечание: если полная дата со временем после полудня, то округлённая дата будет на день больше :(
Luchkin (2002-08-05 15:56:00) [7]недавно столкнулся с той-же фигнёй. Вот к чему пришёл:
SELECT
Adres,
CAST(CAST(Data AS INTEGER) AS smalldatetime) AS DATA,
Kod, Comment
FROM HISTORY
вроде работает... и не тормозит.
sniknik (2002-08-02 19:48:00) [8]так ты ее и сохраняй так как нужно она так и выдаватся будет
--в памяти
DECLARE @datevar datetime
SET @datevar = "12/31/98"
SELECT @datevar
--в таблицу
declare @D Datetime
set @D="12/12/02"
INSERT INTO CASHSAIL ([DATE]) VALUES (@D)
GO
--показать
SELECT * FROM CASHSAIL
именно дата и именно без времени.
поле DATE здесь smalldatetime, в дельфих видится как ftDateTime. и работает именно так как тебе хочется.
kserg@ukr.net (2002-08-02 18:26:00) [9]тогда тебе без CONVERTa не обойтись :(
или другие извраты :)
kserg@ukr.net (2002-08-02 18:23:00) [10]>vasilly © (02.08.02 17:59)
>вывести надо в датасет
тогда твой вопрос должен звучать по другому:
как через SELECT выбрать чистую дату откинув время.
vasilly (2002-08-02 18:03:00) [11]вопрос скорее по типам данных... насколько мне известно в MSSQL нет типа date, который например есть в IB...
нужно сделать вид который бы выкидавал урезаную дату и понимал ее как дату а не как например строку
vasilly (2002-08-02 18:01:00) [12]причем еще один момент... нельзя использовать
convert(varchar(10), RegDate,104) AS [Дата ч.]
vasilly (2002-08-02 17:59:00) [13]нет вывести надо в датасет... просто
как сделать в гриде я знаю... волпрос скорее по SQL...
потому что сервер MSSQL7 в частности не дает выкинуть дату без времени
kserg@ukr.net (2002-08-02 17:47:00) [14]Где надо вывести дату?
Если в Grid-e, то в нем можно задать для полей формат вывода.
Если в др.компонентах, то воспользуйся функцией FormatDateTime,
напр:
Label1.Caption:= FormatDateTime("dd.mm.yy",quTemp1.FieldByName("dat").AsDateTime))
Кулюкин Олег (2002-08-02 17:46:00) [15]Воспользуйтесь функцией FormatDateTime
Format = "dd.mm.yyyy"