Skip to content

Instantly share code, notes, and snippets.

@crmaxx
Last active August 29, 2015 14:00
Show Gist options
  • Save crmaxx/3c95ef5d0740979c3523 to your computer and use it in GitHub Desktop.
Save crmaxx/3c95ef5d0740979c3523 to your computer and use it in GitHub Desktop.
Кривая сортировка в pg на маке

Сортировка на стороне рельс:

[11] pry(main)> Branch.by_company(1).to_a.sort_by(&:branch_name).map(&:branch_name)
  Branch Load (0.6ms)  SELECT "branches".* FROM "branches" WHERE "branches"."company_id" = 1
=> ["Департамент автомобили с пробегом",
 "Лексус Каширский",
 "Лексус Левобережный",
 "Лексус Лосиный Остров",
 "Лексус Рублевский",
 "Тойота Центр Битца",
 "Тойота Центр Каширский",
 "Тойота Центр Лосиный Остров",
 "Тойота Центр Рублевский",
 "Тойота Центр Серебряный Бор"]

Сортировка на стороне базы (OSX):

[10] pry(main)> Branch.by_company(1).order("settings -> 'branch_name' desc").pluck("settings -> 'branch_name'")
   (0.7ms)  SELECT settings -> 'branch_name' FROM "branches" WHERE "branches"."company_id" = 1 ORDER BY settings -> 'branch_name' desc
=> ["Департамент автомобили с пробегом",
 "Лексус Левобережный",
 "Лексус Рублевский",
 "Лексус Каширский",
 "Лексус Лосиный Остров",
 "Тойота Центр Серебряный Бор",
 "Тойота Центр Рублевский",
 "Тойота Центр Каширский",
 "Тойота Центр Лосиный Остров",
 "Тойота Центр Битца"]

Сортировка на стороне базы (Linux):

irb(main):003:0> Branch.by_company(1).order("settings -> 'branch_name'").pluck("settings -> 'branch_name'")
  Branch Load (0.6ms)  SELECT settings -> 'branch_name' FROM "branches" WHERE "branches"."company_id" = 1 ORDER BY settings -> 'branch_name'
=> ["Департамент автомобили с пробегом", 
    "Лексус Каширский", 
    "Лексус Левобережный", 
    "Лексус Лосиный Остров", 
    "Лексус Рублевский", 
    "Тойота Центр Битца", 
    "Тойота Центр Каширский", 
    "Тойота Центр Лосиный Остров", 
    "Тойота Центр Рублевский", 
    "Тойота Центр Серебряный Бор"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment