this option is available in validation..
is there any equivalent when doing a query or should it be SQL
dependent ( coded in the model ) ?

thanks for feedback

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

Search Discussions

  • Robert Walker at Jun 6, 2012 at 8:08 pm

    Kad Kerforn wrote in post #1063333:
    this option is available in validation..
    is there any equivalent when doing a query or should it be SQL
    dependent ( coded in the model ) ?

    thanks for feedback
    orders = Order.order('lower(name)')
    Order Load (0.5ms) SELECT "orders".* FROM "orders" ORDER BY
    lower(name)

    --
    Posted via http://www.ruby-forum.com/.

    --
    You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
    To post to this group, send email to rubyonrails-talk@googlegroups.com.
    To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
  • Robert Walker at Jun 6, 2012 at 8:16 pm

    Robert Walker wrote in post #1063410:
    orders = Order.order('lower(name)')
    Order Load (0.5ms) SELECT "orders".* FROM "orders" ORDER BY
    lower(name)
    Keep in mind that the above will force the database to perform a
    sequential scan of the table even if the column you're ordering by is
    indexed. Which means that if you have performance issues you may need to
    create a case-insensitive index on the column. I'll leave that as an
    exercise for you on how to set that up in whatever database you are
    using.

    --
    Posted via http://www.ruby-forum.com/.

    --
    You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
    To post to this group, send email to rubyonrails-talk@googlegroups.com.
    To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
  • Erwin at Jun 7, 2012 at 10:24 am
    Ok thanks a lot ..
    in the meantime , I modified my record design , adding a ds_name
    string which is the lower(name) written upon create, so I can order on
    it directly...
    as it's for 'tag' records, I'll not have billion of records ..
    according to your feedback I can create a case-insensitive index on
    the column.. even better


    On Jun 6, 10:16 pm, Robert Walker wrote:
    Robert Walker wrote in post #1063410:
    orders = Order.order('lower(name)')
    Order Load (0.5ms)  SELECT "orders".* FROM "orders" ORDER BY
    lower(name)
    Keep in mind that the above will force the database to perform a
    sequential scan of the table even if the column you're ordering by is
    indexed. Which means that if you have performance issues you may need to
    create a case-insensitive index on the column. I'll leave that as an
    exercise for you on how to set that up in whatever database you are
    using.

    --
    Posted viahttp://www.ruby-forum.com/.
    --
    You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
    To post to this group, send email to rubyonrails-talk@googlegroups.com.
    To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouprubyonrails-talk @
categoriesrubyonrails
postedJun 6, '12 at 1:05p
activeJun 7, '12 at 10:24a
posts4
users2
websiterubyonrails.org
irc#RubyOnRails

2 users in discussion

Robert Walker: 2 posts Erwin: 2 posts

People

Translate

site design / logo © 2021 Grokbase