バックグラウンド:
私は、ユーザーがクラス、学生組織、イベントの3つのエンティティを名前で一度に検索できる検索機能を開発しています。
MySQL 5.6とInnodbは、比較的小さなサーバーで使用されます。
テーブル:
探す
entity_id (tiny_int)
entity_type (tiny_int)
full_name (varchar(255))
Index (Primary) -> entity_id, entity_type
Index (FULL TEXT INDEX) -> full_name
クラス(entity_type = 1)
class_id
ALL OTHER COLUMNS...
イベント(entity_type = 2)
event_id
ALL OTHER COLUMNS
組織(entity_type = 3)
org_id
ALL OTHER COLUMNS
質問:
entity_id, entity_type
主キーを使用して、一見似ているが異なる3つのデータセット(クラス、イベント、組織)の名前を1つの検索テーブルにインデックス付けするのは適切ですか?
検索テーブルでテーブルを結合するにはどうすればよいClass, Events, Orgs
ですか?を使用して実行できる条件はありentity_type
ますか?
どんな助けやガイダンスも大歓迎です。