Подтвердить что ты не робот

SQL Query - изменить формат даты в запросе на DD/MM/YYYY

То, что я пытаюсь достичь, довольно прямолинейно, чтобы получить один формат даты другому;

Из этого: Jan 30 2013 12:00:00:000AM К этому: DD/MM/YYYY или в этом случае 30/01/2013

Однако, когда он с 1-го по 9-й месяц в формате даты отсутствует нуль, и есть два пробела, как показано,

Jul  3 2014 12:00:00:000AM

Я охотился за решением, но безуспешно, формат даты необычен и варьируется в зависимости от дня месяца, однако этот формат генерируется внутренней системой и не может быть изменен. Должен ли я затем сопоставить шаблон, чтобы изменить формат? Как я могу это сделать?

Пример части запроса:

SELECT
PREFIX_TableName.ColumnName1 AS Name,
PREFIX_TableName.ColumnName2 AS E-Mail,
PREFIX_TableName.ColumnName3 AS TransactionDate,
PREFIX_TableName.ColumnName4 AS OrderNumber,
...

Строка, которую нужно отредактировать, это PREFIX_TableName.ColumnName3 AS TransactionDate,

4b9b3361

Ответ 1

Если DB SQL Server, то

select Convert(varchar(10),CONVERT(date,YourDateColumn,106),103)

Ответ 2

Если я понял ваш вопрос, попробуйте что-то вроде этого

declare @dd varchar(50)='Jan 30 2013 12:00:00:000AM'

Select convert(varchar,(CONVERT(date,@dd,103)),103)

Обновление

SELECT
PREFIX_TableName.ColumnName1 AS Name,
PREFIX_TableName.ColumnName2 AS E-Mail,
convert(varchar,(CONVERT(date,PREFIX_TableName.ColumnName3,103)),103) AS TransactionDate,
PREFIX_TableName.ColumnName4 AS OrderNumber

Ответ 3

Если у вас есть столбец Date (или Datetime), посмотрите http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format

 SELECT DATE_FORMAT(datecolumn,'%d/%m/%Y') FROM ...

Должен делать работу для MySQL, для SqlServer я уверен, что есть аналоговая функция. Если у вас есть столбец VARCHAR, вы можете сначала преобразовать его в дату, см. STR_TO_DATE для MySQL.

Ответ 4

SELECT CONVERT(varchar(11),Getdate(),105)

Ответ 5

Попробуйте http://www.sql-server-helper.com/tips/date-formats.aspx. Перечисляет все необходимые форматы. В этом случае выберите Convert (varchar (10), CONVERT (date, YourDateColumn, 106), 103) измените 103 на 104 id, вам нужно dd.mm.yyyy