Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Задача для FS / 5 сообщений из 5, страница 1 из 1
23.08.2021, 15:22
    #40092703
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задача для FS
В базе есть таблица, в которой поле содержит текст.
В предположении, что там текст на английском строю FTI и добавляю его в FS Catalog.
Поиск работает, все ок.
Базы могут быть у разных юзеров.
Есть юзеры, которые хранят там смесь текстов, например, запись содержит текст из СМИ: на английском начало, цитаты на русском.
Предположим, у меня есть функция, кторая умеет распознать 3 языка, содержищихся в тексте
EN
RU
NO

Можно ли как-то по-умному FS проиндексировать эту таблицу, т.е. построить 3 индекса по разнм языкам? включить их в каталог?
...
Рейтинг: 0 / 0
23.08.2021, 16:32
    #40092728
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задача для FS
Ролг Хупин,

для юникода вроде бы все равно должно быть - сколько и какие языки, разве нет?
...
Рейтинг: 0 / 0
23.08.2021, 19:37
    #40092791
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задача для FS
Владислав Колосов
Ролг Хупин,

для юникода вроде бы все равно должно быть - сколько и какие языки, разве нет?


это - да, но интересна FT индексация для конкретного языка, т.е. использование морфологии и т.д.

В некоторых случаях используется Neutral и там пофиг язык, бьет на слова через разделители и так и ищет.
...
Рейтинг: 0 / 0
23.08.2021, 21:47
    #40092814
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задача для FS
Ролг Хупин
интересна FT индексация для конкретного языка
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
create fulltext catalog Test;
go

create table dbo.t
(
 id int constraint PK_t primary key,
 s nvarchar(1000)
);
go

insert dbo.t values (1, N'Много огромных flying тарелок');
go

create fulltext index on dbo.t
(s language neutral)
key index PK_t
on Test
with (change_tracking = auto);
go

while fulltextcatalogproperty('Test', 'PopulateStatus') <> 0
 waitfor delay '00:00:01';
go

select * from dbo.t where contains(s, N'formsof(inflectional, fly)', language 1033);
select * from dbo.t where contains(s, N'formsof(inflectional, тарелка)', language 1049);
select * from dbo.t where contains(*, N'formsof(inflectional, огромный)', language 1049);
go

drop table dbo.t;
drop fulltext catalog Test;
go
...
Рейтинг: 0 / 0
24.08.2021, 13:47
    #40092903
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Задача для FS
invm
Ролг Хупин
интересна FT индексация для конкретного языка
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
create fulltext catalog Test;
go

create table dbo.t
(
 id int constraint PK_t primary key,
 s nvarchar(1000)
);
go

insert dbo.t values (1, N'Много огромных flying тарелок');
go

create fulltext index on dbo.t
(s language neutral)
key index PK_t
on Test
with (change_tracking = auto);
go

while fulltextcatalogproperty('Test', 'PopulateStatus') <> 0
 waitfor delay '00:00:01';
go

select * from dbo.t where contains(s, N'formsof(inflectional, fly)', language 1033);
select * from dbo.t where contains(s, N'formsof(inflectional, тарелка)', language 1049);
select * from dbo.t where contains(*, N'formsof(inflectional, огромный)', language 1049);
go

drop table dbo.t;
drop fulltext catalog Test;
go



А, вот как, т.е. индексируем для языка Neutral, а ищем с указанием конкретного языка?
интересно, буду пробовать.
Но есть такая непонятка:
скажем, юзер, когда указывает в приложении, что он ищет, должен указать язык. В общем-то логично
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Задача для FS / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]