SQL로 작성된 것은 아니지만, 괜찮습니다. 우리는 이를 유도할 수 있습니다 …
Meta에 있는 전체 가이드는 다음과 같습니다:
이것은 Rails 모델인 ApplicationRequest를 사용하여 작성되었습니다. 예를 들어:
[3] pry(main)> ApplicationRequest.last(10)
=> [#<ApplicationRequest:0x000055c8edcf99f8 id: 4798, date: Thu, 17 Nov 2022, req_type: "http_total", count: 3080>,
#<ApplicationRequest:0x000055c8edcf9ac0 id: 4799, date: Thu, 17 Nov 2022, req_type: "http_background", count: 1014>,
#<ApplicationRequest:0x000055c8edcf9bb0 id: 4800, date: Thu, 17 Nov 2022, req_type: "page_view_crawler", count: 539>,
#<ApplicationRequest:0x000055c8edcf9c78 id: 4801, date: Thu, 17 Nov 2022, req_type: "http_2xx", count: 1929>,
#<ApplicationRequest:0x000055c8edcf9d68 id: 4802, date: Thu, 17 Nov 2022, req_type: "http_4xx", count: 52>,
#<ApplicationRequest:0x000055c8edcf9e30 id: 4803, date: Thu, 17 Nov 2022, req_type: "http_3xx", count: 85>,
#<ApplicationRequest:0x000055c8edcf9f20 id: 4804, date: Thu, 17 Nov 2022, req_type: "page_view_anon", count: 40>,
#<ApplicationRequest:0x000055c8edcf9fe8 id: 4805, date: Thu, 17 Nov 2022, req_type: "page_view_logged_in", count: 148>,
#<ApplicationRequest:0x000055c8edcfa0d8 id: 4806, date: Thu, 17 Nov 2022, req_type: "page_view_logged_in_mobile", count: 134>,
#<ApplicationRequest:0x000055c8edd00a00 id: 4807, date: Thu, 17 Nov 2022, req_type: "page_view_anon_mobile", count: 2>]
필요한 해당 테이블은 application_requests입니다(하지만 Data Explorer에서 이것이 노출되는 것을 보지 못했는데, 제가 놓친 걸까요?)
이 리포트의 req_type(s)는 다음과 같습니다:
page_view_logged_in
page_view_anon
page_view_crawler
이것은 일반적인 합계와 그룹화이므로, 아마도 Rails 콘솔에서 다음과 같이 시작할 수 있을 것입니다:
ApplicationRequest.where(req_type:["page_view_logged_in", "page_view_anon", "page_view_crawler"]).where('date BETWEEN ? AND ?', '11/14/2022', '11/17/2022')
예를 들어
또는 이에 해당하는 SQL:
SELECT * FROM application_requests WHERE req_type IN (7, 8, 6) AND (date BETWEEN '11/14/2022' AND '11/17/2022')
데이터가 count 컬럼에 포함되어 있기 때문에 일부 집계는 이미 완료되어 있습니다.