Ok, penso di aver ottenuto quello che vuoi adesso. Non ho un modo per testare rapidamente la versione MYSQL di questa funzione, ma la versione SQLite funziona alla grande e, secondo la documentazione, MySQL dovrebbe funzionare altrettanto bene. Potrebbe essere un modo migliore per farlo su MySQL.
SQLite:
SELECT a.*, IFNULL( b.Is_Reply_To, a.Comment_ID ) as Is_Reply_To FROM Comments a LEFT JOIN Comments_Reply b HAVING(Comment_ID) ORDER BY Is_Reply_To ASC, a.Comment_ID ASC
MySQL
SELECT a.*, IF( IS NULL(b.Is_Reply_To), a.Comment_ID, b.Is_Reply_To ) as Is_Reply_To FROM Comments a LEFT JOIN Comments_Reply b HAVING(Comment_ID) ORDER BY Is_Reply_To ASC, a.Comment_ID ASC
Questo produce questi risultati per il mio su SQLite.
Comment_ID Is_Reply_to
1 1
10 1
11 1
2 2
12 2
3 3
13 3
14 3
4 4
5 5
6 6
7 7
8 8
9 9
15 15