2014-02-06 4 views
3

Я пытаюсь создать запрос MS Access, чтобы дать мне количество записей по месяцам за текущий год. Поле с датой - это текст, а дата находится в формате YYYY-MM. Все, что я прочитал говорит, чтобы использовать Year(myDate) = 2014, но я не получаю никаких результатов. Я также попытался Year(Date()), но опять никаких результатов. любые идеи о том, что нужно сделать, чтобы получить этот запрос для запуска?MS Access Year (Date() Function

+0

ну, вы сами сказали, что этот столбец - это текст, а не дата (даже если он хранит «дату»). Вы пытались «LEFT (myDate, 4)»? – Lamak

+1

@Lamak, позволяет ms-access выполнять неявные преобразования? – Sev09

+0

@ Sev09 Я бы не знал, но даже если бы это произошло, чтобы выполнить преобразование из строки в дату, строка должна быть в формате даты, что не имеет места в этом вопросе ('YYYY- MM' не является датой, отсутствует часть дня) – Lamak

ответ

2

Один из способов получить «количество записей в месяц за текущий год» будет

SELECT YearMonth, COUNT(*) AS RecordCount 
FROM YourTable 
WHERE YearMonth LIKE Year(Date()) & "*" 
GROUP BY YearMonth 

где [годМесяц] ваш YYYY-MM текст столбца.