#mysql #sql
Вопрос:
Как я могу найти в своей базе данных MariaDB
теги, которые используются в теге?
Я пытался
WHERE content LIKE %<table>*<p>*</table>%
и множество других комбинаций, НО не работает.
Пример Кода
<table>
<tr>
<td><p>Hello</p></td>
<td><p>Hello1</p></td>
<td><p>Hello2</p></td>
</tr>
</table>
Пожалуйста, помогите
Комментарии:
1. Пожалуйста, предоставьте примерные данные и желаемые результаты.
2. Хорошо ли сформирован ваш HTML (например, нет отсутствующих конечных тегов)?
3. @GordonLinoff У меня есть дополнительный пример кода в наших вопросах, пожалуйста, проверьте
Ответ №1:
Вы можете добавить еще %
и LIKE
для запроса подстановочных знаков или использовать .*
с RLIKE
ними .
Смотрите пример с рабочей скрипкой ниже:
Схема (MySQL v8.0)
CREATE TABLE my_table (
id int auto_increment primary key,
content text
);
insert into my_table(content)
values
('This is <table><tr><td><p>Amazing </p></td></tr></table> content'),
('This is not <p>Amazing </p> content');
Запрос № 1
SELECT
*
FROM
my_table
WHERE
content RLIKE '.*<table>.*<p>.*</table>.*';
| id | content |
| --- | ---------------------------------------------------------------- |
| 1 | This is <table><tr><td><p>Amazing </p></td></tr></table> content |
Запрос № 2
SELECT
*
FROM
my_table
WHERE
content LIKE '%<table>%<p>%</table>%';
| id | content |
| --- | ---------------------------------------------------------------- |
| 1 | This is <table><tr><td><p>Amazing </p></td></tr></table> content |
Дайте мне знать, если это сработает для вас.