나는이 쿼리의 결합이 필요하지만 결과는 특정 순서에 있어야합니다 : 1 개 쿼리UNION의 다른 부분에 대해 다른 주문을 사용하여 UNION 쿼리의 결과를 정렬하려면 어떻게합니까?
- 먼저해야 결과, 이름으로 정렬.
- 다른 결과는 2 개의 쿼리와 날짜로 정렬되어야합니다.
나는이 쿼리 작성 :
SELECT * FROM (
(SELECT c.category_id as media_id,
null as media_users_id,
c2l.category_name as media_title,
null as media_duration,
null as media_upload_timestamp,
null as media_key,
null as media_conversion_info,
null as media_type,
null as media_views,
null as media_embed_views,
null as media_comments_count,
null as media_accept_ratings,
null as media_accept_comments,
NOW() as media_upload_date,
null as media_ratings_sum,
null as media_ratings_count,
null as categories2media_category_id,
null as categories2media_media_id,
1 as type
FROM ost_categories c
LEFT JOIN ost_categories2language c2l
ON c2l.category_id = c.category_id
WHERE c2l.category_language = 'russian' AND c.category_parent_id = '60' AND c.is_group = '1'
ORDER BY media_title)
UNION
(SELECT
m.media_id,
m.media_users_id,
m.media_title,
m.media_duration,
UNIX_TIMESTAMP(m.media_upload_date) media_upload_timestamp,
m.media_key,
m.media_conversion_info,
m.media_type,
m.media_views,
m.media_embed_views,
m.media_comments_count,
m.media_accept_ratings,
m.media_accept_comments,
m.media_upload_date,
m.media_ratings_sum,
m.media_ratings_count,
c2m.categories2media_category_id,
c2m.categories2media_media_id,
0 as type
FROM ost_media m,
ost_categories2media c2m
WHERE c2m.categories2media_category_id = '60'
AND c2m.categories2media_media_id = m.media_id
AND m.media_type = 'video'
AND (m.media_access='public' OR (m.media_access='private' AND m.media_users_id=2))
AND m.media_conversion_status = 'success'
AND m.media_notified_status = 'legal' ORDER BY m.media_upload_date DESC)
) t LIMIT 0,28
을하지만 순서가 잘못되었습니다. 어떻게 해결할 수 있을까요?
제안 : 귀하의 질문에서 선택한 열 이름을 여러 개 (예 : 10 개 이상 생략 할 수 있음) 질문을 더 간단하고 쉽게 이해할 수 있습니다. 전체 쿼리가 더 복잡하다는 것을 나타 내기 위해'- 그리고 다른 값들 '또는 이와 비슷한 것을 남길 수 있습니다. 이렇게하면 스크롤바가 없어도 전체 쿼리가 질문에 표시 될 수 있습니다. 이는 일반적으로 바람직합니다. –