Skip to content

Instantly share code, notes, and snippets.

@agustinvinao
Created October 1, 2012 15:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save agustinvinao/3812514 to your computer and use it in GitHub Desktop.
Save agustinvinao/3812514 to your computer and use it in GitHub Desktop.
Calls to psql views
# And with a simple call like AdvisorSubmittedPremiumTotal.first, these are the results (1s or 1.2s) :
>> AdvisorSubmittedPremiumTotal.first
AdvisorSubmittedPremiumTotal Load (1206.7ms) SELECT "advisor_submitted_premium_totals".* FROM "advisor_submitted_premium_totals" LIMIT 1
=> #<AdvisorSubmittedPremiumTotal policy_status_id: 1, advisor_id: 46, date: "2008-05-13", kind: "Initial", premium: #<BigDecimal:106f4b1c0,'0.145237E4',18(36)>>
# If I filter the date with the current year I have better performance but is slowest than the original sql inside reports (avg 0.5s):
>> AdvisorSubmittedPremiumTotal.where("date>=? and date<=?",date_start, date_end).first
AdvisorSubmittedPremiumTotal Load (456.5ms) SELECT "advisor_submitted_premium_totals".* FROM "advisor_submitted_premium_totals" WHERE (date>='2012-01-01' and date<='2012-12-31') LIMIT 1
=> #<AdvisorSubmittedPremiumTotal policy_status_id: 1, advisor_id: 54, date: "2012-01-04", kind: "Initial", premium: #<BigDecimal:108c77cd0,'0.975E3',9(36)>>
>> AdvisorSubmittedPremiumTotal.where("date>=? and date<=?",date_start, date_end).first
AdvisorSubmittedPremiumTotal Load (452.0ms) SELECT "advisor_submitted_premium_totals".* FROM "advisor_submitted_premium_totals" WHERE (date>='2012-01-01' and date<='2012-12-31') LIMIT 1
=> #<AdvisorSubmittedPremiumTotal policy_status_id: 1, advisor_id: 54, date: "2012-01-04", kind: "Initial", premium: #<BigDecimal:108c5f270,'0.975E3',9(36)>>
>> AdvisorSubmittedPremiumTotal.where("date>=? and date<=?",date_start, date_end).first
AdvisorSubmittedPremiumTotal Load (510.4ms) SELECT "advisor_submitted_premium_totals".* FROM "advisor_submitted_premium_totals" WHERE (date>='2012-01-01' and date<='2012-12-31') LIMIT 1
=> #<AdvisorSubmittedPremiumTotal policy_status_id: 1, advisor_id: 54, date: "2012-01-04", kind: "Initial", premium: #<BigDecimal:108c4a398,'0.975E3',9(36)>>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment