2012-07-26 4 views
4

Кто-нибудь, пожалуйста, проанализируйте его для меня? и при создании типа даты в SQL результат будет выглядеть следующим образом: «2012-2-1 понедельник 00:00:00». Но я хочу только год. Как решить?Разница между датой и датой в SQL Server

+1

'select Year (yourColumn) from yourTable;' – Habib

ответ

6

Создайте числовое поле всего за год или используйте функцию YEAR().

2

datetime, включает дату и время, «дата» включает только форматы даты.

select datepart(year,getdate()) 
0

Непонятно, вы хотите просто выбрать год?
если вы используете MySQL вы можете сделать что-то вроде

SELECT DATE_FORMAT(<your field name>, '%Y') FROM <your table name> WHERE 1 
2

Вы можете использовать этот запрос, чтобы получить текущий год.

select year(now()); 
2

Вы могли бы использовать следующие ?:

SELECT * 
FROM 
table_name 
WHERE CONVERT(DATE, column_name) >= '2017-01-01' 
AND 
CONVERT (DATE, column_name) <= '2017-03-31'; 

Но, вероятно, вы только должны использовать CONVERT часть, как вышеупомянутый запрос получает вас данные между 2 определенными датами.

Это должно быть только «DATE», что вызывает проблемы, а также то, как вы вставили данные. Если вы ввели даты в формате «ГГГГ-ММ-ДД», он должен работать правильно.

Смежные вопросы