Я начал разрабатывать чат-приложение для своего сайта.Сообщения GROUP BY MySQL
Сначала я сделал часть javascript, прежде чем я добрался до бэкэнда. И сейчас только что создали структуру базы данных:
CREATE TABLE IF NOT EXISTS `wp_bp_my_chat` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`from` varchar(255) NOT NULL DEFAULT '',
`to` varchar(255) NOT NULL DEFAULT '',
`message` text NOT NULL,
`sent` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`recd` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `to` (`to`),
KEY `from` (`from`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Теперь, имея Databse, я хочу, чтобы сделать запрос, чтобы увидеть все сообщения, сгруппированных по «из» или «»
Думайте об этом как сообщения facebook , когда вы переходите на фактическую страницу, есть левая боковая панель с сообщениями, сгруппированными по разговора.
выход должен быть как:
разговор между "user_1" и "user_2" (непрочитанное) 2 часа назад
разговор между "user_1" и "user_3" (непрочитанных) 3 часа назад
converstation между "user_1" и "user_5" 5 часов назад
так м y сообщения сгруппированы, как разговоры. У меня могло бы быть сообщение с user_2, но оно должно быть отображено как одно (и информация от последнего)
Любые идеи, как я буду дальше? Как я еще не делал php-сторону. Вы даже можете предложить изменить базу данных для подключения к вашему решению.
Спасибо.
Можете ли вы объяснить больше о том, как вы хотите, чтобы ваш результат выглядел? Функция GROUP BY SQL используется для получения сводной статистики (например, общего количества сообщений от конкретного отправителя), так что это не похоже на то, что вы хотите. – octern
спасибо за внимание, я обновил свой вопрос – CBeTJlu4ok
Вы ищете запрос, который вернет все сообщения в правильном порядке или тот, который просто вернет итоговую информацию, как вы показали в обновлении?Если это так, я ошибался, и вы все равно хотите использовать GROUP BY. – octern