Array
(
)

Formato de data no Sql Server

Arc
   - 31 jan 2005

Tenho um campo DateTime no Sql Server 2000
Executando um select na tabela ele me mostra, por exemplo: ´2003-10-10 00:00:00.000´
Quero convertelo para string, só que no formato DD/MM/YYYY.
Tentei usar o Convert e o cast, só que ele me retorna ´OCT 10 2003´
Alguma solução rapida para isso ?

Abraços

Bon Jovi
   - 31 jan 2005

Nao me lembro se tem função pronta pra isso. Mas vc pode usar DatePart e fazer concatenação. Ex.:

SELECT
CAST(DATEPART(DAY, GETDATE()) AS VARCHAR) + ´/´ +
CAST(DATEPART(MONTH, GETDATE()) AS VARCHAR) + ´/´ +
CAST(DATEPART(YEAR, GETDATE()) AS VARCHAR)

--Resultado: 31/1/2005

Arc
   - 02 fev 2005

Caro Bon Jovi
Eu pensei em fazer isso, mas o problema é que a data teria que aparecer assim, no seu exemplo, 31/01/2005, com o zero no mes, caso este tenha só 1 numero

Marcio.theis
   - 02 fev 2005

Qual a Language que vc tem configurada no banco ?

Arc
   - 02 fev 2005

Seria isso ?
SQL_LATIN1_GENERAL_CP1_CI_AS

Marcio.theis
   - 02 fev 2005

Acesse o Enterprise Manager depois click em Microsoft SQL Servers depois SQL Server Group depois com o botão direito sobre a sua conexão e em Propriedades, irá abrir uma tela com um monte de orelhas, click em Server Settings e lá irá lhe listar o Default language for user:, é neste local que esta a linguagem que esta sendo usado, se estiver como English irá trazer as datas no seguinte formato: 18/01/2005 10:17:28, então já que está no formato 2003-10-10 00:00:00.000, agredito que seja o problema da linguagem.

Bon Jovi
   - 03 fev 2005


Citação:
Caro Bon Jovi
Eu pensei em fazer isso, mas o problema é que a data teria que aparecer assim, no seu exemplo, 31/01/2005, com o zero no mes, caso este tenha só 1 numero

Então é só concatenar com o zero, mas pegando sempre dois caracteres a direita:

SELECT
RIGHT(´0´ + CAST(DATEPART(DAY, GETDATE()) AS VARCHAR), 2) + ´/´ +
RIGHT(´0´ + CAST(DATEPART(MONTH, GETDATE()) AS VARCHAR), 2) + ´/´ +
CAST(DATEPART(YEAR, GETDATE()) AS VARCHAR)

--03/02/2005

Pra facilitar crie uma função pra retornar isso.

Felipe_cduarte
   - 11 fev 2005

Fala arc !

aki vai minha contribuição:

Select Convert( Varchar(10), campo_Data, 103 )
from tabela

[]´s