Поиск значений запятых внутри запроса? - PullRequest
0 голосов
/ 10 ноября 2011

Как мне найти значение, скажем

23000

для столбца файлового потока VARBINARY (MAX) в SQL Server 2008 R2? Это не сработает

SELECT * FROM dbo.tbl_Files WHERE CONTAINS(SystemFile, '%[23,000]%');

Ответы [ 4 ]

2 голосов
/ 10 ноября 2011
SELECT * FROM dbo.tbl_Files WHERE CAST(SystemFile AS NVARCHAR) LIKE '%23,000%'
2 голосов
/ 10 ноября 2011

Я думаю, что это просто у вас есть % и полнотекстовый поиск использует *

select
*
from tbl_Files
Where contains(SystemFile, '"*23,000*"')

У меня есть полнотекстовый индекс с номерами телефонов, и это тоже работает

select
*
from tbl_Files
Where contains(SystemFile, '0116')
1 голос
/ 10 ноября 2011

Пожалуйста, попробуйте это:

select * from  dbo.tbl_Files where   CAST(SystemFile as int)  like '%23000%'

Если у вас есть тип данных VARBINARY для столбца, вам нужно CAST это значение, потому что оно хранится как значение bianry в таблице.

0 голосов
/ 10 ноября 2011

попробуйте это: SELECT * FROM dbo.tbl_Files WHERE приведение (SystemFile как varchar), например, "% 23,000%"

...