Я хочу разрешить пользователям отправлять друг другу сообщения. На данный момент это текущая схема
CREATE TABLE IF NOT EXISTS `inbox` (
`id` int(11) NOT NULL auto_increment,
`id_usuario` int(11) NOT NULL,
`id_to` int(11) NOT NULL,
`mensaje` varchar(250) collate utf8_spanish_ci NOT NULL,
`texto` text collate utf8_spanish_ci NOT NULL,
`fecha` date NOT NULL,
`visto` int(1) NOT NULL,
`adjunto` int(1) NOT NULL,
`item` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1 ;
. По этому вопросу, я думаю, что это актуально только:
- id_usuario -уникальный идентификатор пользователя (отправителя)
- id_to - уникальный идентификатор пользователя (получателя)
- id - уникальный идентификатор сообщения
Мне интересно,
если я изменю тип id_to с целого числа (только один идентификатор) на varchar, чтобы:
id_usuario - запятая нескольких уникальных идентификаторов, отделенная от пользователей (получателей)
и хранить несколько приемников, таких как (несколько идентификаторов): '333, 444, 555'
смогу ли я:
- показать каждому получателю сообщение?
Все еще вычисляя запрос, это будет что-то вроде: "select * from inbox where sesionid IN (idto)"
??
- показать отправителю каждого получателя сообщения?Все еще вычисляя запрос, будет ли это что-то вроде
"select id_to from inbox where id = '254'"
, а затем взорвется ',' ??
Или
Должен ли я изменить свою схему?