Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
Не формат выводимых данных поменять, а именно отбросить значение времени?
17 мар 14, 14:48    [15738646]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
CONVERT()
17 мар 14, 14:52    [15738698]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
tpg
CONVERT()
Можно и CAST( ... AS DATE)
17 мар 14, 15:07    [15738855]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
SQL Server 2005, поле в таблице dtDatePay, тип данных datetime.
Киньте кодом. а?
Не хотят у меня примеры из инета работать!
Вот этот:
CONVERT(DATETIME, CONVERT(VARCHAR(15), GETDATE(), 101))
возвращает ошибку "Недопустимое или отсутствующее выражение"
17 мар 14, 15:19    [15738984]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
o-o
Guest
если я правильно понимаю, ТС желает в 2005-ом получить аналог DATE.
т.е. не "визуализировать", отбросив временнУю часть, сконвертировав в строку,
а чтоб оставался тип ДАТА, но время куда-то исчезло.
если это так, то: в 2005 еще не появился DATE,
а кому не нужна временнАя часть, заменяет ее нулевым временем при хранении
17 мар 14, 15:31    [15739102]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
00_00_00
SQL Server 2005, поле в таблице dtDatePay, тип данных datetime.
Киньте кодом. а?
Не хотят у меня примеры из инета работать!
Вот этот:
CONVERT(DATETIME, CONVERT(VARCHAR(15), GETDATE(), 101))

возвращает ошибку "Недопустимое или отсутствующее выражение"
DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0)
17 мар 14, 15:34    [15739127]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0)
всё тоже: "Недопустимое или отсутствующее выражение"
17 мар 14, 15:53    [15739296]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
00_00_00
DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0)

всё тоже: "Недопустимое или отсутствующее выражение"
Может, SELECT не догадались приписать?
SELECT DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0)
17 мар 14, 16:03    [15739398]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
"SELECT" там есть в начале SQL-строки представления:
SELECT     ...AS Sum,  ... AS Code,..., YEAR(MyDate) AS IntYear, DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0) As OnlyData 
FROM         dbo.MyTable
17 мар 14, 16:20    [15739587]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
00_00_00
"SELECT" там есть в начале SQL-строки представления:
SELECT     ...AS Sum,  ... AS Code,..., YEAR(MyDate) AS IntYear, DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0) As OnlyData 
FROM         dbo.MyTable
Так мы далеко не продвинемся.
Может, у Вас Oracle какой-нибудь на самом деле?
17 мар 14, 16:25    [15739640]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest

переместил поле с формулой сразу после SELECT... всё заработало!
а разве вычисляемые поля не могут быть в произвольном месте?!
17 мар 14, 16:29    [15739687]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
вычисляемые поля
Guest
00_00_00

переместил поле с формулой сразу после SELECT... всё заработало!
а разве вычисляемые поля не могут быть в произвольном месте?!

вы что-то не то делаете

declare @t table (
	A int
)  
insert @t (a)
select 1

select 
	A + A  as Ax2
	, A
from @t
17 мар 14, 17:08    [15740036]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
У меня обычное представление(запрос на выборку) созданное в конструкторе...
Всё уже работает...вот только не понятно почему столбец с этой формулой работает только. когда стоит на первом месте?
17 мар 14, 19:14    [15740878]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
o-o
Guest
00_00_00,

значит, последствия "использования конструктора".
или конструктор кривой, или руки того, кто его пользует
17 мар 14, 19:55    [15741102]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
o-o
Guest
в конструкторе-то в коде забивали DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0),
или впрямо в гриде?
я вот для интереса забиваю в коде, все работает, а в грид какая-то ахинея попала,
до такого, конечно, самому не додуматься...
я даже знаю, откуда там верт. черта: это мой разделитель List separator

К сообщению приложен файл. Размер - 31Kb
17 мар 14, 20:07    [15741177]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
o-o
Guest
...а угадайте, что будет, если в ГРИДЕ поставить запятые туда,
где сейчас верт. черта?
та самая ошибка ТС!!!

отсель вывод: забейте, товарищи, на ГУИ

К сообщению приложен файл. Размер - 14Kb
17 мар 14, 20:10    [15741195]     Ответить | Цитировать Сообщить модератору
 Re: Как в поле представления из полного формата даты сделать краткий?  [new]
00_00_00
Guest
всё точно - я прямо в грид забивал.
18 мар 14, 19:34    [15748435]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить