2017-11-07 1 views
0

나는 최근에 코드 레일을 시작 했으므로이 문제를 파악해야합니다.와 같은 연산자가 발생했습니다.

%td 
    = Ahoy::Event.where(name: "viewed_brochure").where_properties(brochure_id: brochure.id, time: like 'Mon%').count 

이것은 데이터베이스의 월요일 수를 표시해야합니다. 하지만 작동하지 않고 구문 오류가 발생합니다.

이 줄에서 연산자와 같은 것을 어떻게 사용하는지 궁금합니다.

Ahoy::Event.where(time: "2017-10-30 14:50:35.361999").where_properties(brochure_id: brochure.id).count 

이 줄은 잘 작동하지만 나는 연산자 또는 이와 유사한 것을 사용해야합니다.

+1

그래서 무엇이 문제입니까? –

+0

하지만 '시간'은 datetime 형식입니다. 'Mon %'문자열과 비교하면 무엇을 얻을 수 있습니까? – Anton

+0

요일로 변환되는이 datetime 데이터를 결정해야합니다. – Emre

답변

0
Ahoy::Event.where("date_part('dow', time) = 1").count 

이 더 많은 필터를 추가 할 수 있습니다 Monday.You에서 생성 된 모든 이벤트의 수를 반환합니다.

0

당신은 그것을 위해 포스트 그레스 기능 내장 사용하려고 할 수 있습니다

Ahoy::Event.where("EXTRACT(DOW FROM time) = 1").where_properties(brochure_id: brochure.id).count 
+0

정말 감사합니다. 이 두 가지 솔루션은 잘 작동합니다. – Emre