Я думаю, что самый простой способ фильтрации тегов html:
private static final Pattern REMOVE_TAGS = Pattern.compile("<.+?>");
public static String removeTags(String string) {
if (string == null || string.length() == 0) {
return string;
}
Matcher m = REMOVE_TAGS.matcher(string);
return m.replaceAll("");
}
blockquote>
SELECT id_service
Обе таблицы, участвующие в запросе, имеют столбец с именем
id_service
. Поскольку вы не указали префикс имени столбца, MySQL не может достоверно определить, какое из двух значений вы имеете в виду, поэтому возникает ошибка «неоднозначное имя столбца».Поскольку вы используете
LEFT JOIN
, весьма вероятно, что вы захотите вернуть столбец из таблицыCHOSEN_SERVICES
(так как другой столбец может бытьNULL
, когда условие соединения не соответствует). [1112 ]Обратите внимание:
SELECT CHOSEN_SERVICES.id_service FROM CHOSEN_SERVICES LEFT JOIN SERVICES ON CHOSEN_SERVICES.id_chosen_service = SERVICES.id_service WHERE id_reservation = ?
Примечание: обратите внимание, что столбец
id_reservation
в предложенииWHERE
также не является префиксом. Хотя это не приведет к одной и той же ошибке (поскольку этот столбец существует только в одной из двух таблиц), рекомендуется всегда всегда добавлять префиксные столбцы, когда задействованы несколько таблиц. Другая хорошая привычка - использовать псевдонимы таблиц.Соответственно, вот новая версия вашего запроса:
SELECT cs.id_service FROM chosen_services cs LEFT JOIN services s ON cs.id_chosen_service = s.id_service WHERE cs.id_reservation = ?