<MyRusakov.ru />

Разработчик игр на Unreal Engine

Разработчик игр на Unreal Engine

Этот комплект с нуля всего за 7 месяцев сделает Вас Unreal-разработчиком. И при этом учиться достаточно 1 час в день.

Начнёте Вы с основ программирования, постепенно перейдя к C++. Затем очень подробно изучите Unreal Engine, и после научитесь программировать на C++ в Unreal Engine. В конце создадите крупный проект на C++ в Unreal Engine для своего портфолио.

Комплект содержит:

- 416 видеоуроков

- 95 часов видео

- 1024 задания для закрепления материала из уроков

- 3 финальных тестирования

- 4 сертификата

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Поиск по полнотекстовому индексу
02.04.2012 13:10:39 Поиск по полнотекстовому индексу Сообщение #1
Bizmatek

Bizmatek

Новичок

Новичок

Дата регистрации:
31.03.2011 06:15:14

Сообщений: 8

Здравствуйте. У меня вопрос касательно инструкции MATCH() AGAINST()
Данная инструкция предполагает поиск слова/фразы в текстовом поле. Но при попытке это сделать у меня получается найти только последнее слово в поле, все остальные слова якобы отсутсвуют и поиск по ним невозможен. Подскажите пожалуйста где я касячу...

CREATE TABLE test_table (
id INT(3) NOT NULL AUTO_INCREMENT,
text_field TEXT,
PRIMARY KEY(id),
FULLTEXT INDEX FULL_1 (text_field)
);



INSERT INTO `test_db`.`test_table` (
`id` ,
`text_field`
)
VALUES (
NULL , 'тестовый набор текста номер один'
);



INSERT INTO `test_db`.`test_table` (
`id` ,
`text_field`
)
VALUES (
NULL , 'тестовый набор текста номер два'
);



INSERT INTO `test_db`.`test_table` (
`id` ,
`text_field`
)
VALUES (
NULL , 'тестовый набор текста номер три'
);



работает тут только запрос в котором есть последнне слово в текстовом поле. Например так:

SELECT * FROM test_table WHERE MATCH(text_field) AGAINST ('один')


Если вписать другое слово из фразы - то результата не будет:

SELECT * FROM test_table WHERE MATCH(text_field) AGAINST ('набор текста')


ну вот как-то так. просьба сильно не пинать если туплю, я только начал постигать mysql. Заранее спасибо.
Профиль
02.04.2012 13:16:49 Поиск по полнотекстовому индексу Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

http://myrusakov.ru/php-search.html
http://myrusakov.ru/mysql-case-search.html
Профиль
02.04.2012 13:37:24 Поиск по полнотекстовому индексу Сообщение #3
Bizmatek

Bizmatek

Новичок

Новичок

Дата регистрации:
31.03.2011 06:15:14

Сообщений: 8

По Вашим ссылкам рассматривается поиск по тексту с помощью LIKE - с этим-то как раз проблем не возникает; По поводу регистров тоже вроде все ясно... Не то чтобы меня не устраивал LIKE, просто хотелось бы узнать как работать именно с полнотекстовым индексом, т.к. LIKE не выдает результаты по релевантности.
Профиль
02.04.2012 17:24:22 Поиск по полнотекстовому индексу Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Попробуйте так: AGAINST ('набор текста' IN BOOLEAN MODE)
Профиль
03.04.2012 09:38:15 Поиск по полнотекстовому индексу Сообщение #5
Bizmatek

Bizmatek

Новичок

Новичок

Дата регистрации:
31.03.2011 06:15:14

Сообщений: 8

Спасибо, помогло. В логическом режиме все очень хорошо ищется Тему можно закрывать.
Профиль