Как изменить TIMESTAMP в DATETIME в инструкции SQL [duplicate]

Если мы рассмотрим общие сценарии, в которых может быть выбрано это исключение, доступ к свойствам с объектом вверху.

Пример:

string postalcode=Customer.Address.PostalCode; 
//if customer or address is null , this will through exeption

здесь, если адрес имеет значение null, то вы получите NullReferenceException.

Итак, в качестве практики мы всегда должны использовать проверку нуля, прежде чем обращаться к свойствам в таких объектах (особенно в общих)

string postalcode=Customer?.Address?.PostalCode;
//if customer or address is null , this will return null, without through a exception
85
задан compile-fan 19 March 2011 в 16:01
поделиться

5 ответов

Используйте функцию FROM_UNIXTIME() в MySQL

Помните, что если вы используете фреймворк, который хранит его в миллисекундах (например, временную метку Java), вы должны разделить на 1000 для получения правильного времени Unix в секундах.

147
ответ дан Community 3 September 2018 в 14:08
поделиться

Ответить Ответ Janus Troelsen

Используйте UNIX_TIMESTAMP вместо TIMESTAMP

SELECT from_unixtime( UNIX_TIMESTAMP(  "2011-12-01 22:01:23.048" ) )

Функция TIMESTAMP возвращает дату или DateTime, а не временную метку, тогда как UNIX_TIMESTAMP возвращает временную метку unix

5
ответ дан ksvendsen 3 September 2018 в 14:08
поделиться

SELECT from_unixtime( UNIX_TIMESTAMP(fild_with_timestamp) ) from "your_table" Эта работа для меня

2
ответ дан Leo 3 September 2018 в 14:08
поделиться
DATE_FORMAT(FROM_UNIXTIME(`orderdate`), '%d-%m-%Y') as "Date" FROM `orders`

Это окончательное решение, если данная дата находится в закодированном формате, например 1300464000

45
ответ дан Lex R 3 September 2018 в 14:08
поделиться

Вы можете использовать

select from_unixtime(1300464000,"%Y-%m-%d %h %i %s") from table;

Для подробного описания о

  1. from_unixtime ()
  2. unix_timestamp ()
0
ответ дан user2613580 3 September 2018 в 14:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: