CREATE TABLE IF NOT EXISTS `chat` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`from` int(11) UNSIGNED NOT NULL,
`to` int(11) UNSIGNED NOT NULL,
`message` text NOT NULL,
`sent` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`recd` int(11) UNSIGNED NOT NULL DEFAULT '0',
`del_from_status` int(11) NOT NULL DEFAULT '0',
`del_to_status` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `from` (`from`),
KEY `to` (`to`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 AUTO_INCREMENT=1 ;
1)この表には、そう、お互いに話す一日中オンライン100人の女の子を想像し、そんなに大きくなることができます私のインデックスはいいですか?
2)ユーザー1がユーザー2からすべてのメッセージを削除する場合、私はupdate del_to_status=1 where from=2 and to=1
を入力しますが、すべてのテーブルをスキャンして= 2から= 1までの各メッセージを検索する必要があります。 del_to_status = 0である。私は多くのメッセージを持っている場合、それは遅くなることができますか?これに対する提案はありますか?
あなたは最適化を開始する必要がありますか?それは遅いですか? – binnyb
@binnyb私はそれを構築しています。私はそれについていくつかの選択肢を持っていたい将来の問題を避けるために! –