下划线我有一个MySQL声明这样MySQL的声明不包括在结果
$sql_insertwotd = "SELECT * FROM table WHERE word != '' AND word NOT LIKE '%\_%' ORDER BY RAND() LIMIT 1";
由于某种原因,它仍然会拉了一个字有下划线。我读过这个格式是为了澄清一个下划线。
我不希望它选择包含下划线词
下划线我有一个MySQL声明这样MySQL的声明不包括在结果
$sql_insertwotd = "SELECT * FROM table WHERE word != '' AND word NOT LIKE '%\_%' ORDER BY RAND() LIMIT 1";
由于某种原因,它仍然会拉了一个字有下划线。我读过这个格式是为了澄清一个下划线。
我不希望它选择包含下划线词
你必须使用TWO BACKSLASHES
(\\
),它应该工作
SELECT * FROM table WHERE word != '' AND word NOT LIKE '%\\_%'
ORDER BY RAND() LIMIT 1
可能是你的代码是好的,但它反映为单斜杠相同。 –
不是这些反斜杠吗?而不是'FORWARD SLASHES' :) –
您可能需要一个明确的逃生:
word NOT LIKE '%/_%' ESCAPE '/'
https://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html
默认\是转义字符,您的查询应该按原样工作。
看起来它应该工作已经 –
它不,由于某种原因,它仍然会拉起下划线 –
您的代码就可以了。它应该工作。 –