[解決済み】SQL Serverでvarchar(MAX)とTEXTを使い分ける。
質問
今読んだのですが
VARCHAR(MAX)
データ型(2GB近いcharデータを格納できる)が
TEXT
データ型は、SQL Server 2005 および次の SQL SERVER バージョンで使用できます。
あるカラムの内部で任意の文字列を検索したい場合、どちらの操作が速いですか?
-
を使用すると
LIKE
節に対してVARCHAR(MAX)
カラム?WHERE COL1 LIKE '%search string%'
-
を使用しています。
TEXT
の列を作り、そこに 全文インデックス / カタログ をこのカラムに追加し、そのカラムを使用して検索します。CONTAINS
節は?WHERE CONTAINS (Col1, 'MyToken')
解決方法は?
その
VARCHAR(MAX)
タイプは
TEXT
. 基本的な違いは
TEXT
型は常に blob にデータを格納するのに対して
VARCHAR(MAX)
タイプは、データが8kの制限を超えない限り、データを直接行に格納しようとし、その時点でblobに格納します。
LIKE文の使用方法は、2つのデータ型の間で同じです。追加機能である
VARCHAR(MAX)
と一緒に使用することができます。
=
と
GROUP BY
を他の
VARCHAR
カラムにすることができます。しかし、多くのデータを持っている場合、これらの方法を使用すると、大きなパフォーマンスの問題が発生します。
を使うべきかどうかについては
LIKE
を使って検索するか、それとも
フルテキストインデックス
と
CONTAINS
. この質問は
VARCHAR(MAX)
または
TEXT
.
大量のテキストを検索する場合、パフォーマンスが重要な場合は フルテキストインデックス .
LIKE
は実装が簡単で、少量のデータには適していることが多いですが、インデックスを使用できないため、大きなデータではパフォーマンスが極端に悪くなります。
関連
-
[解決済み] Linuxで特定のテキストを含むすべてのファイルを検索するにはどうすればよいですか?
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] SQL ServerにおけるLEFT JOINとLEFT OUTER JOINの比較
-
[解決済み] varcharとnvarcharの違いは何ですか?
-
[解決済み] MySQLです。大きなVARCHARとTEXTの比較?
-
[解決済み] textとvarcharの違い(character varying)
-
[解決済み] SQL Serverにおけるchar、nchar、varchar、nvarcharの違いは何ですか?
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 「ストアドプロシージャが見つかりませんでした
-
[解決済み] SQL Serverでシングルクォートを置換する
-
[解決済み] 各GROUP BY式は、外部参照でない列を少なくとも1つ含む必要があります。
-
[解決済み] 等値演算で "SQL_Latin1_General_CP1_CI_AS" と "Latin1_General_CI_AS" の照合の競合を解決できない
-
[解決済み] データベースのトランザクションログが満杯です。ログの領域が再利用できない理由を調べるには、sys.databases の log_reuse_wait_desc カラムを参照してください。
-
[解決済み] SQL Server : ログインに成功しましたが、「データベース [dbName] にアクセスできません。(ObjectExplorer) "と表示されました。
-
[解決済み] SQL Serverで文字列からすべてのスペースを削除する
-
[解決済み] SQL ServerにおけるXOR
-
[解決済み] URLに最適なデータベースフィールドの種類
-
[解決済み】SQL Server Text型とvarcharデータ型との比較【終了しました