テーブル内の末尾のスペースをどのように識別できるかを知りたい。私は、SQL Server 2008およびテストとして、次の表を作成するテーブル内に末尾の空白がないか調べる
CREATE TABLE first_test_name
(
firstName varchar(255)
)
を使用して、このようなレコードを挿入している:私は、スペースを挿入してからのように新しいレコードを追加しようとした
insert into first_test_name (firstName)
values('Bob')
をこの:
insert into first_test_name (firstName)
values('Bob ') -- just 1 space
と3時間のために、
insert into first_test_name (firstName)
values('Bob ') -- two spaces used this time.
私は「ボブ」(スペースなし)のためのクエリを実行場合
は今、私はまだ3 マイクエリのカウントを取得しました:
select count(*) from first_test_name WHERE firstName = 'Bob'
は答えは1になっているべきではないでしょうか。
また、このテーブルではsp_help
を使用していますが、「トリムブランクのトリム」の値はnoに設定されています。
なぜ3カウントになるのですか?私は私が見つから二列の右の答えを得る
をこのクエリを使用して検索する場合、私は、関連のノートでちょうど1
を期待していました。
これを繰り返すと、質問は「Bob」を検索するときに3とカウントされる理由です。 また、この場合、「トリムブランクをトリムする」とはどういう意味ですか?
は、このリンクhttpを見てみましょうUSERS FROM:// decipherinfosys .wordpress.com/2007/02/15/ansi_padding-and-trailing-spaces-in-sql-server/SQL Serverが文字列をスペースと比較する方法を理解するために – Lamak