değil görünüşte tam dizin oluşturma ruhu içinde.
kelime
boşluk veya noktalama işaretleri olmadan karakterlerin bir dize var.
ifade her kelime arasında boşluk olan bir ya da daha çok sözcük mi.
Ve
Noktalama göz ardı edilir. Bu nedenle, CONTAINS (sınama, "bilgisayar hatası") , " bilgisayarım nerede? Değeri bulunamıyor."
Seçeneklerin ne olduğundan emin değilim.
Açıkçası LIKE
çalışıyor: problem ima sonuçlarla
CREATE TABLE [dbo].[stackoverflow_319730](
[id] [int] IDENTITY(1,1) NOT NULL,
[txtcol] [text] NOT NULL,
CONSTRAINT [PK_stackoverflow_319730] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[0]')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[1]')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('some other text')
INSERT INTO [dbo].[stackoverflow_319730] (txtcol) VALUES ('arg[0], arg[1]')
EXEC sp_fulltext_catalog 'FTCatalog','create'
EXEC sp_fulltext_table 'stackoverflow_319730', 'create', 'FTCatalog', 'pk_stackoverflow_319730'
EXEC sp_fulltext_column 'stackoverflow_319730', 'txtcol', 'add'
EXEC sp_fulltext_table 'stackoverflow_319730','activate'
EXEC sp_fulltext_catalog 'FTCatalog', 'start_full'
SELECT *
FROM dbo.stackoverflow_319730
WHERE txtcol LIKE 'arg[ [ ]0]'
SELECT *
FROM dbo.stackoverflow_319730
WHERE CONTAINS(txtcol, '"arg[0]"')
:
SELECT *
FROM dbo.stackoverflow_319730
WHERE txtcol LIKE 'arg[ [ ]0]'
Ama
SELECT *
FROM dbo.stackoverflow_319730
WHERE CONTAINS(txtcol, '"arg[0]"')
Hatta örneğin, içinde
'arg[1]'
bir sütun eşleşir noktalama işareti ile:
id txtcol
----------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 arg[0]
(1 row(s) affected)
id txtcol
----------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 arg[0]
2 arg[1]
4 arg[0], arg[1]
Informational: The full-text search condition contained noise word(s).
yakınında sözdizimi hatası bu doğrudur, ancak parantezden kurtulmak zorundasınız (ya da gösterdiğiniz gibi birden fazla VEYA VEYA ayrılmış alıntıya yerleştirmeniz gerekir) - tırnak işareti dışındaki tırnakların bir hata oluşturması. –
sadece% 100 net olmak için, bu çalışır: 'CONTAINS (alan, 'value AND' değeri [0] '')' dır, ancak bu şunları yapmaz: 'CONTAINS (alan, 'value' değeri [0]" ') ' . Botanik tümceleri –
SELECT * FROM dbo.stackoverflow_319730 DAHA İYİ KONTEYVLER (txtcol, '"arg [0]" VE "arg [1]"'), test verilerimde kendi başına arg [0] ile eşleşmelidir. . –