- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Необходимо организовать поиск в "найденном".
Пытался найти в архиве, не нашел. Может кто-то сталкивался.
Есть база на 300т. есть много критериев поиска.
К примеру, клиент хочет поискать слово "машина", в результате поиска возвращается 50к записей, потом клиент ставит галочку "искать в найденном" и пишет слово "volvo", в результате должны выбраться "машины volvo". Вариант искать одним запросом "машины" и "volvo" не устраивает, обязательно должны быть галочка "поиск в найденном". и таких поисков в найденном может быть бесконечное множество
Я вижу только один вариант каждый поиск сохранять во временную таблицу с результатами, а при следующием поиска делать "текущий запрос + AND id IN (SELECT id FROM temp_search_table)"
Вопрос.
Правильный ли такой подход? Может у PostgreSQL есть какие-то свои варианты решения такого рода задачи.
А почему не устраивает вариант поиска по двум и более словам, хоть и их бесконечное множество, всетаки так при каждом новом запросе будет только один запрос в базу, а так нужно создавать временную таблицу, искать по этой таблице, чистить ее мне кажется это геморойнее.
Проще циклом по условиям сделать запрос и все.
Если не устраивает скорось перебора всей таблицы, то первый запрос по слову "машина" все равно будет тормозить. А так используй лимиты. Пока не знал SQL_CALC_FOUND_ROWS просто просчитывал на 10 страниц вперед иговорил, что есть еще, но не считал их в реальности.
Так делал базу порядка 30-50т записей, работает довольно быстро.
P.s. А галочку и не надо убирать, просто когда ставишь галочку, делаешь запрос где есть и машина и вольво
P.s.s Сорри, за невнимательность, SQL_CALC_FOUND_ROWS наверное в вашей безе не работает. Не обратил внимание
Тут многое зависит от архитектуры базы...
Я лично при похожем поиске сначала выдаю марки машин после выбора марки уже ищу модель и т.д.