Senior
52
Mesajlar və agentlər cədvəllərini əlaqələndirin və istifadəçilər tərəfindən bəyənilən ən yaxşı 5 agenti geri qaytaran SQL sorğusu yazın. Reaksiya sahəsi -1, 0, 1 dəyərlərini qəbul edir.
Şirkətlər soruşuldu
Сбербанк
AI-dan cavab
sobes.tech Süni İntellekt
Для хранения сообщений и агентов можно спроектировать две таблицы:
agents
- agent_id (PK)
- name
messages
- message_id (PK)
- agent_id (FK)
- content
- reaction (INT, принимает значения -1, 0, 1)
SQL-запрос для получения топ-5 агентов с наибольшим средним значением реакции (то есть чьи ответы больше нравятся пользователям):
SELECT a.agent_id, a.name, AVG(m.reaction) AS avg_reaction
FROM agents a
JOIN messages m ON a.agent_id = m.agent_id
GROUP BY a.agent_id, a.name
ORDER BY avg_reaction DESC
LIMIT 5;
Этот запрос вычисляет среднее значение реакции по сообщениям каждого агента и сортирует их по убыванию, возвращая топ-5.