I have a table ‘Asset’ with a column ‘AssetDescription’. Every row of it has some group of words/sentences, seprated by comma.
row1: – flowers, full color, female, Trend
row2:- baby smelling flowers, heart
Now if a put a search query like:-
select * from Asset where contains(AssetDescription,'flower')
It returns nothing.
I have one more table ‘SearchData’ with column ‘SearchCol’, having similar rows as mentioned above in table ‘Asset’. Now if a put a search query like:-
select * from SearchData where contains(SearchCol,'flower')
It returns both the rows.
QUESTION:-
-
Why first query doesn’t return any result, but second one does correctly.
-
If ‘Full Text Search’ has something to do with 1st ques, than what to do regarding that. As I’m using SQL server 2000.
CONTAINS requires a full text search index, and for full text search indexing to be enabled.
LIKE doesn’t require full text search.
The advantage of using CONTAINS over LIKE is that CONTAINS is more flexible and potentially a lot faster. LIKE may require a full table scan depending how you use it.
From the SQL Server docs