![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно организовать запрос? [MSSQL]
Snik © (2006-06-09 10:31:00)В базе существует поле STDATE, в котором хранится дата и время, т.е. YY-MM-DD H:M:S, мне нужно из этого поля достать уникальные значения только даты. Что - то типа этого SELECT DISTINCT STDATE FROM ... Вот и не знаю как ?
ЮЮ (2006-06-09 12:31:00) [1]SELECT DISTINCT CAST(CONVERT(varchar, BIRTHDAY , 101) AS DATETIME) FROM PERSONNEL
Выбирает 4222 записи и не ругается
попробуй varchar(10)
Snik (2006-06-09 12:27:00) [2]
> MOA
Не проходит - говорит пропущен оператор :
SELECT DISTINCT CAST(CONVERT(varchar, STDATE , 101) AS DATETIME) FROM Qs
или я не так че-то делаю
Zz_ (2006-06-09 11:38:00) [3]select dateadd(dd,0,datediff(dd, 0, getdate()))
MOA (2006-06-09 10:44:00) [4]Если тип поля типа Datetime - например, так:
CAST(CONVERT(varchar, STDATE , 101) AS Datetime)
А можно вынести в функцию, чтобы не мучатся каждый раз - ф-ция скалярная, так что можно использовать "везде". Например, я использую такую:
ALTER FUNCTION ufn_TrimTime (@InDate Datetime)
RETURNS DateTime
WITH SCHEMABINDING
AS
BEGIN
IF @InDate IS NOT NULL
SET @InDate = CAST(CONVERT(varchar, @InDate, 101) AS Datetime)
RETURN @InDate
END
Удачи!
Ega23 (2006-06-09 10:41:00) [5]Только даты - это yy-mm-dd?