#mysql #select
Вопрос:
как выбрать строки, в которых столбец story
содержит <p class='dg'>
Я перепробовал все или почти все варианты с кавычками и экранированием,
например:
$sq = "select * from arts where story like '%<p class='dg'>%' order by ind asc"
$sq = "select * from arts where story like '%<p class="dg">%' order by ind asc";
Ответ №1:
Это похоже на PHP-код. Обратная косая черта является особенной в синтаксисе PHP, а также в синтаксисе MySQL. Чтобы получить буквальную обратную косую черту в строке, используйте двойную обратную косую черту:
$sq = "select * from arts where story like '%<p class=\'dg\'>%' order by ind asc";
Альтернатива: В SQL строковые литералы позволяют паре символов кавычек становиться похожими на один буквальный символ кавычек. Таким образом, вы можете сделать следующее:
$sq = "select * from arts where story like '%<p class=''dg''>%' order by ind asc";