Я даже не уверен, что это вполне возможно сделать с MySQL, но я надеюсь, что это так.
ОК, поэтому у меня есть эта команда SQL
SELECT * FROM table WHERE $WhereCondition ORDER BY ListStyle
В качестве примера данных в ListStyle я мог бы иметь
2000 3000 3700 3800
То, что я надеюсь сделать, это использовать какой-то оператор if в SQL, который позволит мне проверять другие поля в строке результатов, чтобы я мог изменить значение ListStyle, прежде чем использовать его на странице для закажите соответственно.
Так, например, у меня есть поля a, b и c. Теперь, если a и b НЕ пустые, а c = 100 и ListStyle = 3700, я хочу изменить значение ListStyle на 3699, чтобы при выводе цикла результатов отображались строки, соответствующие условию ( a != '', b != '', c = 100 and ListStyle = 3700)
над строками, которые имеют ListStyle 3700
Я не могу просто отредактировать данные в базе данных, хотя это было бы простым решением. Данные должны оставаться как есть.
Первоначально я пытался сделать это в php. Хотя изменить значение ListStyle с помощью операторов if достаточно просто, я не знаю простого способа упорядочить результаты, не помещая их в массив и не сортируя его. Я действительно не хочу этого делать, поскольку это будет означать переписывание большого количества кода, поэтому я надеюсь, что это все возможно сделать в MySQL.
Может кто-нибудь помочь с этим?