Доброго времени суток!
Ребята, такой вопрос
Стандартно вывод после захода в категорию товаров идет по цене по возрастанию.
То есть: цена 10, цена 27, цена 56 и т.д...
Так же есть возможность отсортировать по имени товара ASC, DESC.
Но! У каждого товара есть статус, в котором указывается: есть ли этот товар в наличии или нет.
Так вот.
Мне нужно, чтобы товар который Есть в наличии всегда был первым в списке при любой сортировке.
Сортирую я к примеру по Названию товара и первые товары в списке те, которые есть в наличии, далее которые Под заказ, далее, которых Нет в наличии.
Это для того, чтобы товар который Есть в наличии всегда был первый. А то получается, что он разбросан по всему списку.
|Сортировка по имени->
|--Сортировка по имени со статусом Есть в нал.->
|Сортировка по имени->
|--Сортировка по имени со статусом Нет в наличии->
|Сортировка по имени->
|--Сортировка по имени со статусом Под заказ
Это как бы условный список такой)
реально ли такое только запросом сделать?
PS. Если вдруг не очень понятно, то я про ORDER BY.
Ситуация, когда вывод отсортирован по name, но иерархия нужна как описано выше (как бы ступенчато).
1. dropoff - 25 Октября, 2011 - 00:40:15 - перейти к сообщению
2. LIME - 25 Октября, 2011 - 03:56:38 - перейти к сообщению
интересно почему подобные вопросы остаются без ответа?
ваши варианты...
ваши варианты...
3. dropoff - 25 Октября, 2011 - 04:00:33 - перейти к сообщению
Вы так тонко намекнули о том, что я не понятно описал? ))
4. LIME - 25 Октября, 2011 - 04:10:06 - перейти к сообщению
да
много воды
даже неохота вникать
может когда буду трезвей
но врядли ))
(Добавление)
dropoff конкретней
сосредоточьтесь))
много воды
даже неохота вникать
может когда буду трезвей
но врядли ))
(Добавление)
dropoff конкретней
сосредоточьтесь))
5. dropoff - 25 Октября, 2011 - 04:19:11 - перейти к сообщению
))
я про ORDER BY
Стандартно вывод после захода в категорию товаров идет по цене по возрастанию.
То есть: цена 10, цена 27, цена 56 и т.д...
Так же есть возможность отсортировать по имени товара ASC, DESC.
Но! У каждого товара есть статус, в котором указывается: есть ли этот товар в наличии или нет.
Так вот.
Мне нужно, чтобы товар который Есть в наличии всегда был первым в списке при любой сортировке.
Сортирую я к примеру по Названию товара и первые товары в списке те, которые есть в наличии, далее которые Под заказ, далее, которых Нет в наличии.
Это для того, чтобы товар который Есть в наличии всегда был первый. А то получается, что он разбросан по всему списку.
Надеюсь теперь понятно изложил.
зы. перечитал первый пост и понял, что погнал)
я про ORDER BY
Стандартно вывод после захода в категорию товаров идет по цене по возрастанию.
То есть: цена 10, цена 27, цена 56 и т.д...
Так же есть возможность отсортировать по имени товара ASC, DESC.
Но! У каждого товара есть статус, в котором указывается: есть ли этот товар в наличии или нет.
Так вот.
Мне нужно, чтобы товар который Есть в наличии всегда был первым в списке при любой сортировке.
Сортирую я к примеру по Названию товара и первые товары в списке те, которые есть в наличии, далее которые Под заказ, далее, которых Нет в наличии.
Это для того, чтобы товар который Есть в наличии всегда был первый. А то получается, что он разбросан по всему списку.
Надеюсь теперь понятно изложил.
зы. перечитал первый пост и понял, что погнал)
6. LIME - 25 Октября, 2011 - 04:23:37 - перейти к сообщению
судя по вашему ответу на мой пост я могу сделать вывод что вы не глупый человек
в связи с этим должен принести извенение за легкое принебрежение проявленое в моем посте
и советую конкретезировать вопрос
уж очень неохота читать так много буков))
либо переформултруйте либо сообщите что ваш вопрос требует вдумчивого чтения
обещаю помочь по мере знаний
надеюсь на правильное прочтение моего последнего поста
(Добавление)
dropoff статус это отдельное поле?
какие значения принимает?
(Добавление)
предлагаю сделать поле статус тини инт
и вывод будет ордер бай поле статуса
...детская задача
(Добавление)
индексировать статус не надо
(Добавление)
ответил?
в связи с этим должен принести извенение за легкое принебрежение проявленое в моем посте
и советую конкретезировать вопрос
уж очень неохота читать так много буков))
либо переформултруйте либо сообщите что ваш вопрос требует вдумчивого чтения
обещаю помочь по мере знаний
надеюсь на правильное прочтение моего последнего поста
(Добавление)
dropoff статус это отдельное поле?
какие значения принимает?
(Добавление)
предлагаю сделать поле статус тини инт
и вывод будет ордер бай поле статуса
...детская задача
(Добавление)
индексировать статус не надо
(Добавление)
ответил?
7. dropoff - 25 Октября, 2011 - 04:32:53 - перейти к сообщению
В базе, у товара есть поле status
0 нет в наличии
1 есть в наличии
2 под заказ
но выводить ВСЕГДА нужно 1, 2, 0 именно в таком порядке.
При этом учитываю сортировку, которой может воспользоваться юзер, например по name или price
0 нет в наличии
1 есть в наличии
2 под заказ
но выводить ВСЕГДА нужно 1, 2, 0 именно в таком порядке.
При этом учитываю сортировку, которой может воспользоваться юзер, например по name или price
8. LIME - 25 Октября, 2011 - 04:32:56 - перейти к сообщению
или вам прям запрос составить? тогда давайте структуру таблицы
(Добавление)
2 нет в наличии
0 есть в наличии
1 под заказ
и нет проблем
(Добавление)
а хотите я завтра протрезвею мы свяжемся по скайпу и я наведу порядок в вашей базе
так будет проще
(Добавление)
dropoff пишет:
смените на0 нет в наличии
1 есть в наличии
2 под заказ
1 есть в наличии
2 под заказ
2 нет в наличии
0 есть в наличии
1 под заказ
и нет проблем
(Добавление)
а хотите я завтра протрезвею мы свяжемся по скайпу и я наведу порядок в вашей базе
так будет проще
9. dropoff - 25 Октября, 2011 - 04:39:02 - перейти к сообщению
В том то и дело, что уже не сменить. Делали, через одно место.
Там загоняются товары с нужным статусом через софтину, заточенную под магаз.
Таблица такая
Там загоняются товары с нужным статусом через софтину, заточенную под магаз.
Таблица такая
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- CREATE TABLE IF NOT EXISTS `products` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `title` varchar(255) DEFAULT NULL,
- `status` int(11) NOT NULL DEFAULT '0',
- `price` varchar(255) DEFAULT NULL,
- `url` varchar(255) DEFAULT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=0 ;
Я бы с удовольствием, да скайпа нет(