@ Платон, пожалуйста, объясни, почему?

его дня. Итак, все в названии :)

Я ищу, чтобы объединить результат двух запросов и упорядочить результат вместе (как не один за другим). => Я думал о применении союза и заказать их. Это не сработало.

Я посмотрел вокруг, как здесьна стеке или здесьDeveloppez (французский сайт), Я пробую разные примеры и предложения, но безуспешно. Судя по тому, что я сделал, кажется, это потому, что я работаю над Mysql.

Во всяком случае, вот мои попытки, и результаты:

Мои оригинальные 2 запроса

SELECT * FROM user_relation WHERE from_user_id = 1
List item
SELECT * FROM user_relation WHERE to_user_id = 1

это результат списка, составленного из результата первого выбора (упорядоченного с помощью индексной клавиши), за которым следует результат 2-го выбора, упорядоченного с помощью Index KEy.

Попытка 1:

(SELECT * FROM user_relation WHERE from_user_id = 1 ORDER BY trust_degree)
UNION
(SELECT * FROM user_relation WHERE to_user_id = 1 ORDER BY trust_degree)

Запрос был выполнен, но результат был таким же, как и оригинальный запрос: результат первого выбора (порядок по ключу индекса), за которым следуют результаты второго запроса

Попытка 2:

(SELECT * FROM user_relation WHERE from_user_id = 1 ORDER BY trust_degree)
UNION
(SELECT * FROM user_relation WHERE to_user_id = 1 ORDER BY trust_degree)
ORDER BY trust_degree

=> запрос выполнен, результат как попытка 1, но с предупреждением в логике Mysql: (этот тип закрытия уже был проанализирован (ORDER BY))

Попытка 3

(SELECT * FROM user_relation WHERE from_user_id = 1
UNION
SELECT * FROM user_relation WHERE to_user_id = 1)
ORDER BY trust_degree

=> Не запускается, но ошибка # 1064 - синтаксическая ошибка возле UNION

Попытка 4:

SELECT *
FROM (
(SELECT * FROM user_relation WHERE from_user_id = 1)
UNION
(SELECT * FROM user_relation WHERE to_user_id = 1)
)
ORDER BY trust_degree 

=> Не запускается, а список из 6 хороших ошибок. Любое предложение?

Ответы на вопрос(3)

Ваш ответ на вопрос