Задать вопрос
@eldar_web

Как в Ruby on Rails сортировать по алфавиту исключая в слове что-то?

Допустим, есть модель Address, с полей name.
А там такие записи:
ул Белова
ул Алексея
ул Фадеева

Из-за того, что в начале записей стоит "ул", сортировака по алфавиту не работает Address.order('name ASC')
Как можно решить проблему?
  • Вопрос задан
  • 509 просмотров
Подписаться 1 Оценить 4 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
  • Stepik
    Продвинутый SQL
    2 недели
    Далее
  • Shultais Education
    Продвинутый SQL
    1 месяц
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Skillfactory
    Профессия Тестировщик на Python
    9 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
HighQuality
@HighQuality
☁ Ниндзя девелопер
В идеале вынести тип адреса в отдельное поле, но если сейчас нужно организовать по-быстрому отчет, можно использовать мощь postgresql (ее ведь используете?)

Address.order("SUBSTRING(name, 'ул\s?(.*)') ASC")

Этот способ при больших объемах данных будет работать медленно. Рекомендовал бы пересмотреть такой подход к сохранению адресов. :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы