У меня есть таблица, как показано ниже.SQL Server: SELECT DISTINCT Group By Count
Возможно ли, что я могу сделать вывод, что и выше?
Благодаря
У меня есть таблица, как показано ниже.SQL Server: SELECT DISTINCT Group By Count
Возможно ли, что я могу сделать вывод, что и выше?
Благодаря
Вот MYSQL запрос, чтобы сделать
SELECT, идентификатор, дата, сообщ, COUNT (ID) AS графа FROM table_name GROUP BY ид
Мой реальный запрос ВЫБРАТЬ tbl_msg.msg_id, tbl_msg.msg_sender, tbl_msg.msg_receiver, tbl_msg.msg_content, tbl_msg.msg_date, tbl_users.user_fname, tbl_users.user_lname ИЗ tbl_msg LEFT JOIN tbl_users ON tbl_msg.msg_sender = tbl_users.user_no WHERE (tbl_msg.msg_receiver = 'staff') GROUP BY tbl_msg.msg_sender ORDER BY tbl_msg.msg_date DESC – Taylern
Но столбец ошибок tbl_msg.msg_id недействителен в списке выбора потому что он не содержится ни в агрегатной функции, ни в предложении GROUP BY. – Taylern
Попробуйте следующий запрос:
SELECT t1.id, t1.date, t1.msg, t2.msg_count
FROM table_name t1
JOIN (SELECT max(msg_id) as mid, count(*) as msg_count FROM table_name GROUP BY id) as t2
ON(t1.msg_id=t2.mid)
Похоже, вы хотите получить последнюю дату в результирующем наборе, поэтому запрос будет выглядеть как-то, SELECT id, max (date), msg, COUNT (id) AS count FR OM table_name GROUP BY ид
Для SQL Server, попробуйте следующее:
SELECT id, max(date) as date, msg, count(id) AS count
FROM table_name
GROUP BY id, msg
Похоже, что вы хотите последнюю дату для каждого идентификатора. Но что вам нужно для каждого идентификатора? Я предполагаю, что на самом деле каждый msg не будет просто msg ...? – grin0048
msg ... означает просто сообщение вроде hi blabla ... – Taylern
у вас есть первичный ключ в таблице? –