Я работаю над веб-приложением, которое содержит функцию поиска, которая возвращает ресторан, когда пользователь отправляет запрос, соответствующий этому ресторану.
Например, если пользователь вводит «Пицца» и вводит «Виски», я хочу, чтобы результат вывел соответствующий ресторан ОДИН РАЗ.
Вместо этого точный запрос приводит к появлению названия ресторананесколько раз.
Таблицы:
Foodtbl Drinkstbl Restaurantstbl
Код SQL:
" SELECT r.restname, r.type, r.location, r.website, r.reviews, r.PageLink"
+ " FROM restaurants r, food f, drinks d"
+ " WHERE SOUNDEX(f.foodcategory) = SOUNDEX(?)"
+ " AND SOUNDEX(d.drinkvariety) = SOUNDEX(?)"
+ " AND r.restid = f.restid"
+ " AND r.restid = d.restid");
В то время как результат цикла:
<% while (restResults.next()) { %>
<td><%= restResults.getString("restname") %></td>
<td><%= restResults.getString("type") %></td>
<td><%= restResults.getString("location") %></td>
<td><a href="<%= restResults.getString("website") %>"</a>Go to Website</td>
<td><a href="<%= restResults.getString("reviews") %>"</a>Go to Reviews</td>
<td><a href ="<%= restResults.getString("PageLink") %>"</a>More Info</td>
Это проблема с моим оператором SQL или проблема цикла?
Спасибо.