CHAR と VARCHAR の違い (一方は固定長、もう一方は可変長) を理解しています。また、行内のすべてのフィールドが固定長である場合、テーブルのパフォーマンスは一般的に向上します。
ただし、VARCHAR(500) などの長さを VARCHAR に指定すると、その行は固定長として保持されるのでしょうか?
コンテキストとして、50 列 (ほとんどが TINYINT) のクリーンなテーブルがありますが、それぞれ最大 500 文字を格納する必要があるため、このテーブルには VARCHAR として 2 つの列が必要です。正確な長さはユーザーの入力に左右されるため、不明です。
追加の条件として、これらの VARCHAR フィールドを別の参照テーブルに入れたくありません。これは、不要な結合が生成され、予想されるクエリ パターンに効率的に適合しないためです。
どんな助けでも大歓迎です。ありがとう。