Autor Zpráva
Vanama
Profil
Ahoj, chtěl bych vyjet poslední aktivitu ze dvou tabulek podle času sestupně, ale seřadit to z těch dvou údajů jako jedno primární řazení, jestli to je možné.

Mám tabulku chess_game, v ní pole start a tabulku chess_move, v ní pole entered. Potřebuju tyhle dvě pole nějak zkloubit a seřadit.

Děkuji za odpověď
Vanama
Profil
Aha, tak jsem zjistil, že by to šlo spojit pomocí UNION, problém ale asi bude v tom, že ten dotaz je docela složitej a cpát do něj ještě tohle, no nevím.

SELECT g.game_id, g.start, g.white_user_id, g.black_user_id, g.notify_white, g.notify_black, uw.username white_username, ub.username black_username, uw.email white_email, ub.email black_email, g.result, g.complete, g.draw_offered, g.comment, g.discuss_url, MAX( m.move_no + m.color /10 ) move_and_color, MAX( m.move_no ) last_move_no, (
(
MAX( m.move_no + m.color /10 ) - MAX( m.move_no )
) *10
)last_move_color, COALESCE( COUNT( m.move_no ) , 0 ) total_no_moves, MAX( m.entered ) last_move
FROM (
jos_chess_game g
LEFT JOIN jos_users uw ON g.white_user_id = uw.id
LEFT JOIN jos_users ub ON g.black_user_id = ub.id
)
LEFT JOIN jos_chess_move m ON g.game_id = m.game_id
GROUP BY g.game_id, g.start, g.white_user_id, g.black_user_id, uw.username, ub.username, g.result, g.comment, g.discuss_url, g.complete, g.draw_offered
ORDER BY last_move DESC , g.start ASC
LIMIT 0 , 30

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0