AS message_id
                  
                  
                  FROM
                  
                  
                  (
                  
                  
                  SELECT from_user_id AS user_id, MAX(id) AS message_id FROM chats WHERE to_user_id = 68
                  
                  
                  GROUP BY from_user_id
                  
                  
                  
                  
                  
                  UNION
                  
                  
                  
                  
                  
                  SELECT to_user_id AS user_id, MAX(id) AS message_id FROM chats WHERE from_user_id = 68
                  
                  
                  GROUP BY to_user_id) AS d
                  
                  
                  GROUP BY d.user_id) AS dialogs
                  
                  
                  
                  
                  
                  LEFT JOIN chats cd ON cd.id = dialogs.message_id
                  
                  
                  LEFT JOIN users u ON u.id = dialogs.user_id;
                  
                  
                  
                  
                  
                  можно ли это упростить? допустимо ли так или лучше делать ряд маленьких запросов? кто подскажет?
                  
                  
                
я бы такое у ChatGPT спрашивал. Касательно 1 большой vs много маленьких вопросов зависит от специфики. Но как правило если можно что-то сделать одним запросом, то лучше это сделать одним запросом, т.к. меньше накладных расходов.
chatGPT что все к нему отправляют, он такой умный стал?)
просто то что ты спрашиваешь, это не сложная но рутинная задача. Мало кому интересно садиться и разбираться в чужих sql запросах.
да, понимаю, может просто взгляд со стороны бегло - и очевидно решение. хотя понимаю везде всё индивидуально
мне сложно представить человека который один раз взглянув на простыню sql, мгновенно выдаст оптимизированный вариант 😄
Обычная программа которая разработана профессиональными программистами , для не профессиональных программистов
Обсуждают сегодня