Asar
Новичок
Нужен хелп с запросом (MATCH + LEFT JOIN, 2 таблицы)
Итак, изначалально делается поиск по полю price.Service - здесь все Ок (быть может, есть более рациональные варианты, но этот работает):
SELECT prices.Service, prices.Pr, prices.Price, pr.Title,
MATCH Service AGAINST ('".$_POST['search']."')
AS relev FROM prices LEFT JOIN pr ON pr.Id=prices.Pr
WHERE Service LIKE '%".$_POST['search']."%' OR pr.Title LIKE '%".$_POST['search']."%' ORDER BY relev DESC
Теперь хочу с помощью этого же запроса поискать еще и в поле pr.Title. Добавляю лишнюю строку (+), после чего выдается ошибка:
SELECT prices.Service, prices.Pr, prices.Price, pr.Title,
MATCH Service AGAINST ('".$_POST['search']."')
+MATCH pr.Title AGAINST ('".$_POST['search']."')
AS relev FROM prices LEFT JOIN pr ON pr.Id=prices.Pr
WHERE Service LIKE '%".$_POST['search']."%' OR pr.Title LIKE '%".$_POST['search']."%' ORDER BY relev DESC
Вопросы:
1. Можно ли искать в поле pr.Title с помощью того же запроса?
2. Если можно, то в чем моя ошибка? Или туда (...+MATCH pr.Title AGAINST...) вообще поля других таблиц вставлять нельзя?..
3. Будет ли такой поиск быстрее, чем поиск с отдельным запросом для pr.Title?
-~{}~ 03.02.05 11:59:
пп. 1 и 2 решены - ошибку нашел. Остается п. 3...
Итак, изначалально делается поиск по полю price.Service - здесь все Ок (быть может, есть более рациональные варианты, но этот работает):
SELECT prices.Service, prices.Pr, prices.Price, pr.Title,
MATCH Service AGAINST ('".$_POST['search']."')
AS relev FROM prices LEFT JOIN pr ON pr.Id=prices.Pr
WHERE Service LIKE '%".$_POST['search']."%' OR pr.Title LIKE '%".$_POST['search']."%' ORDER BY relev DESC
Теперь хочу с помощью этого же запроса поискать еще и в поле pr.Title. Добавляю лишнюю строку (+), после чего выдается ошибка:
SELECT prices.Service, prices.Pr, prices.Price, pr.Title,
MATCH Service AGAINST ('".$_POST['search']."')
+MATCH pr.Title AGAINST ('".$_POST['search']."')
AS relev FROM prices LEFT JOIN pr ON pr.Id=prices.Pr
WHERE Service LIKE '%".$_POST['search']."%' OR pr.Title LIKE '%".$_POST['search']."%' ORDER BY relev DESC
Вопросы:
1. Можно ли искать в поле pr.Title с помощью того же запроса?
2. Если можно, то в чем моя ошибка? Или туда (...+MATCH pr.Title AGAINST...) вообще поля других таблиц вставлять нельзя?..
3. Будет ли такой поиск быстрее, чем поиск с отдельным запросом для pr.Title?
-~{}~ 03.02.05 11:59:
пп. 1 и 2 решены - ошибку нашел. Остается п. 3...