Я пытаюсь получить результаты, упорядоченные по значению столбца. У меня есть этот основной запрос:Получить результат SQL, упорядоченный по значению столбца
SELECT `product_id`,
(SELECT `name`
FROM `specifications` s
WHERE `specification_id` = sp.`specification_id`) AS Specification,
`value`
FROM `specs-product` sp
WHERE `product_id` = '4'
AND (`specification_id` = '88'
OR `specification_id` = '103'
OR `specification_id` = '18'
OR `specification_id` = '15'
OR `specification_id` = '157'
OR `specification_id` = '89'
OR `specification_id` = '9'
OR `specification_id` = '223'
OR `specification_id` = '224'
OR `specification_id` = '29'
OR `specification_id` = '87'
OR `specification_id` = '219'
OR `specification_id` = '218'
OR `specification_id` = '220')
Я имя столбца в таблице specifications
называется priority
. Мне нужно получить результат, упорядоченный по этим значениям приоритета.
Я попытался добавить order by s.'priority'
Но не работал. Как я могу это сделать?
Структура таблицы следующим образом:
specifications
+------------------+------+----------+
| specification_id | name | priority |
+------------------+------+----------+
| 1 | abc | 5 |
| 2 | xxxx | 2 |
| 3 ababab | 3 | |
+------------------+------+----------+
PRODUCTS
ТАБЛИЦА
+------------+------------+--+
| product_id | reference | |
+------------+------------+--+
| 1 | abc | |
| 2 | xxxx | |
| 3 | ababab | |
+------------+------------+--+
Что вы имеете в виду, что не работает? Каким типом данных является столбец 'priority'? Если это строка, она будет сортироваться лексикографически, поэтому вам нужно будет отличить ее как целое. – bernie
Это 'INT'. Итак, я должен что-то изменить? – user1012181
Можете ли вы дать структуру таблицы для обеих таблиц? –