-- 0. create dummy tableCREATE TABLE dummy_table( id int identity constraint PK_id primary key,name varchar(100),surname varchar(100))-- 0.1 populate dummy tableinsert into dummy_table values ('AAs','11s')insert into dummy_table values ('AAs','22s')insert into dummy_table values ('BBs','11s')insert into dummy_table values ('BBs','22s')insert into dummy_table values ('AAs BBs','11s 22s')-- 1. create catalogCREATE FULLTEXT CATALOG ctg_TESTE WITH ACCENT_SENSITIVITY = OFFGO-- 2. create indexCREATE FULLTEXT INDEX ON dummy_table( name, surname ) KEY INDEX PK_id ON ctg_TESTE WITH STOPLIST = SYSTEM, CHANGE_TRACKING OFF, NO POPULATION;GO-- 3. populate indexALTER FULLTEXT INDEX ON dummy_table START FULL POPULATION;GO-- first issue, using * to search in both columns causes the predicate to mach for each column, no for rowselect * from dbo.dummy_tablewhere contains(*,'AAs and 11s')select * from dbo.dummy_tablewhere contains(*,'AAs') and contains(*,'11s')----------------------------------------------- second issue, same thing using the wild cardselect * from dbo.dummy_tablewhere contains(*,'"AA BB*"')select * from dbo.dummy_tablewhere contains(*,'"AA 11*"')---------------------------------------------