web-dev-qa-db-ja.com

SQL-単語の先頭で検索

何かで始まる文字列でWordの先頭を検索するSQLSERVERステートメントを記述したいと思います。

たとえば、会社のレコードで「em」を検索すると、次のようになります。

エミリー株式会社

エミー

ない

それらを忘れる

レミング、LLC

これはPHPで文字列を配列に抽出/スライスし、各単語の先頭を検索することで実行できます。しかし、ストアドプロシージャ/関数を使用せずに、SQLサーバーでこのクエリを作成するにはどうすればよいでしょうか。

9
tester2001

JWの答えは、Emがフィールドの最初にあるエントリに対して機能します。

Wordが文字列の最初ではない値も取得する必要がある場合は、次のことを試してください。

SELECT * FROM tableName WHERE CompanyName LIKE 'Em%' or CompanyName LIKE '% Em%'

(これは、すべてのWordがスペースで区切られていることを前提としています。)

19
chabzjo

LIKEを使用します

SELECT * FROM tableName WHERE CompanyName LIKE 'Em%'
1
John Woo

別のオプションは CONTAINS 、次のようなものです。

SELECT ... WHERE CONTAINS(CompanyName, 'Em*');
0
ain