この質問は以前に尋ねられたことを知っていますが、最良の答えは次のようです: ユーザー設定を保存するための最良の方法は?
ただし、いくつかの追加基準があるため、この質問を再度行います。あるユーザーの設定を別のユーザーの設定と比較し、2 人のユーザーの違いをすばやく取得できるようにする必要があります。すべてのユーザーの設定はブール値になります。
これを達成するための最良の方法は何ですか?
私は次のように考えていました: すべてのユーザー設定を表す 2 進数を持っています: 例: 1100011100.. 各ビットは特定の設定に対応します
次に、それを BINARY タイプとして保存するか (255 ビット、つまり 255 の設定を保存できます。そうですか?)、バイナリを int に変換して int として保存します (選択は INT または BIGINT - INT = 4 のいずれかです)。 *8 = 32 ビット、BIGINT = 8*8 = 64 ビット)
そうすれば、ユーザーのテーブルに設定を保存する追加の列が1つだけ必要になり、2進数を取るだけで2人のユーザー間の設定を簡単に比較できます
私がやろうとしていることを行う方法や、ここでやろうとしている方法に問題があることについて、他のアイデアを持っている人はいますか?
(注: データベースは私の得意分野ではありません)