Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Неправильная Сортировка товаров по имени


Рекомендованные сообщения

Приветствую, столкнулся с такой проблемой при сортировки по имени товара по имени отображает товары не правильно.
Есть список:
Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 90см с 2 пропилами

Доска 100см с 1 пропилом 

Доска 100см с 2 пропилами

Доска 120см с 1 пропилом 

Доска 120см с 2 пропилами

 

При стандартной сортировке выдает 

Доска 100см с 1 пропилом 

Доска 100см с 2 пропилами

Доска 120см с 1 пропилом 

Доска 120см с 2 пропилами

Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 90см с 2 пропилами

 

При использовании ORDER BY (pd.name+0)  ASC выдает 

Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 100см с 1 пропилом 

Доска 120см с 1 пропилом 

Доска 90см с 2 пропилами

Доска 100см с 2 пропилами

Доска 120см с 2 пропилами

 

А нужно достичь такого 

Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 90см с 2 пропилами

Доска 100см с 1 пропилом 

Доска 100см с 2 пропилами

Доска 120см с 1 пропилом 

Доска 120см с 2 пропилами

Кто сталкивался с таким ?

Изменено пользователем Andrey15
Ссылка на комментарий
Поделиться на других сайтах


Тут можно только чуть схитрить.

 

Например максимальный разме р занимает 3 цифры.

Тогд там где две цивры, перед размером вставляем линий пробел.

 

Например:

Доска 16см с 1 пропилом  - перед 16 ставим два пробела

Доска 100см с 1 пропилом   - перед 100 только один пробел

 

Правда придётся потратить время на правку названий.

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах

28 минут назад, chukcha сказал:

пробуйте так

 

order by cast(name as unsigned)

Выдает 

Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 100см с 1 пропилом 

Доска 120см с 1 пропилом 

Доска 90см с 2 пропилами

Доска 100см с 2 пропилами

Доска 120см с 2 пропилами

Ссылка на комментарий
Поделиться на других сайтах


1 час назад, mpn2005 сказал:

Тут можно только чуть схитрить.

 

Например максимальный разме р занимает 3 цифры.

Тогд там где две цивры, перед размером вставляем линий пробел.

 

Например:

Доска 16см с 1 пропилом  - перед 16 ставим два пробела

Доска 100см с 1 пропилом   - перед 100 только один пробел

 

Правда придётся потратить время на правку зазваний.

Выдает:

Доска 16см с 1 пропилом 

Доска 60см с 1 пропилом 

Доска 70см с 1 пропилом 

Доска 90см с 2 пропилами

Доска 100см с 1 пропилом 

Доска 100см с 2 пропилами

Доска 120см с 1 пропилом 

Доска 120см с 2 пропилами

По моему пока наиболее подходящий вариант.

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.