У меня возникла одна проблема с выбором данных из mysql, и я не могу понять это. Попытайтесь делать исследования, но не повезло.Mysql - выбор и заказ по двум столбцам цены как один
У меня есть таблица с 4-мя столбцами:
id | name | price | discount_price
1 | Test 1 | 150 | 50
4 | test 2 | 130 | 300
2 | test 3 | 200 | 0
3 | test 4 | 130 | 10
4 | test 5 | 80 | 0
И мне нужно, чтобы выбрать данные и заказать их по цене, и если discount_price не «ZERO», чем заказ по price_discount. Проблема в том, что теперь она работает не так, как я ожидал. Он показывает результаты при сортировке первого столбца и, в конце концов, сортируется второй столбец. Зависит от выбора ASC или DESC.
Мне нужно что-то достичь, чтобы объединить эти две колонки в одну, а не сортировку. Например:
id | name | price | discount_price
3 | test 4 | 130 | 10*
4 | test 5 | 80* | 0
1 | Test 1 | 150 | 50*
2 | test 3 | 200* | 0
4 | test 2 | 130 | 300*
Возможно ли это в mysql? Или следует сортировать это позже в php? Спасибо за помощь.
10,80,50,200,300 не имеет особого смысла (по крайней мере, для меня). – Vatev
Тот же вопрос у меня есть, как вы можете сделать ненужную сортировку. 10,80,50,200,300. Это также мне не имеет никакого смысла. если хотите 10,50,80,200,300. Затем вы можете получить из нижеследующего запроса: 'Выберите идентификатор, имя, цена, discount_price, if (discount_price = 0, price, discount_price) как sort_order FROM table order by sort_order ASC' – Manish
Разве вы не просили этого вчера, никто отмените ваши требования, и вопрос был удален. – RiggsFolly