1

テーブルの2列から検索するためにCONTAINS句を使用するにはどうすればよいですか。例:-CONTACTという名前のテーブルがあるとします。FIRST_NAME、LAST_NAME、USERNAME、EMAILなどの列が含まれています。

ここで、CONTAINS句を使用してUSERNAME列の「ABCD」などの文字列を検索する場合は、次のように記述します。

SELECT * 
FROM CONTACT 
WHERE (CONTAINS(USERNAME, 'ABCD', 1)> 0);

それは私に望ましい結果を与えます。しかし、2列の文字列を検索する必要がある場合はどうなりますか?私は使ってみました:-

SELECT * 
FROM CONTACT 
WHERE (CONTAINS(USERNAME, 'ABCD', 1)> 0)
AND (CONTAINS(FIRST_NAME, 'ABCD', 1)> 0);

しかし、それは私にエラーを与えます。これを手伝ってください。

PS:CONTAINS句を使用するために、必要に応じて列のインデックスが作成されました。

4

2 に答える 2

3

あなたのラベルはユニークではありません、試してみてください:

SELECT * 
FROM CONTACT 
WHERE (CONTAINS(USERNAME, 'ABCD', 1)> 0)
AND (CONTAINS(FIRST_NAME, 'ABCD', 2)> 0);
于 2013-03-18T10:34:00.753 に答える