私は、文字列が&であるテキストを含む列Cを持つテーブルTを持っていますが、次のクエリを実行すると、10行ありますが何も返しません。tsql contains関数で&(アンパサンド)をどのように検索しますか?
SELECT * FROM T WHERE Contains(C, 'a&b')
私は、文字列が&であるテキストを含む列Cを持つテーブルTを持っていますが、次のクエリを実行すると、10行ありますが何も返しません。tsql contains関数で&(アンパサンド)をどのように検索しますか?
SELECT * FROM T WHERE Contains(C, 'a&b')
使って検索用語にする二重引用符:
SELECT *
FROM T
WHERE CONTAINS(C, '"a&b"')
は、そうでなければあなたがとbを持っているものを探しています。
containsの代わりにLIKEを使用できますか?
SELECT * FROM T WHERE C LIKE '%a&b%'
代わりのように使用:
SELECT * FROM T WHERE C like '%&%'
あなたは& B
または
SELECT * FROM T WHERE C like '%a&b%'
を探しているなら
&とその他の英数字以外の文字を_で置き換える列のコピーを作成します。それから私はこれを行うことができます。
SELECT * FROM T WHERE Contains(C_searchable, 'a_b')
したがって、&contains _は自動的に変更されません。 – Xaisoft
いいえ、&はワードブレーカとして扱います。それは "a&b"を "a b"と同じように扱います。 –
あなたは&を探していると言いますが、&bを探します。 – JohnIdol
私はこの場合文字列aとbを探していましたが、何らかの理由で&を持っていれば何も返しません。 – Xaisoft