SQL查询,其中字段值不包含空格

Lar*_*ars 5 mysql sql

我目前正在使用以下查询:

SELECT *
FROM `wp_usermeta`
WHERE meta_key='avatar'
AND meta_key NOT LIKE '% '
ORDER BY RAND()
LIMIT 4
Run Code Online (Sandbox Code Playgroud)

这样,我想尝试只获取字段值,文件名中没有空格.我的查询中的错误在哪里?它仍然选择文件名中带有空格的文件名.

Phi*_*hil 10

尝试

NOT LIKE '% %'
Run Code Online (Sandbox Code Playgroud)

您当前的通配符匹配仅捕获尾随空格.

此外,你正在使用meta_key两次.您的LIKE子句中使用的列是否应该是meta_value(或者Wordpress中的任何列).

如果你担心性能问题,这个问题可能值得一读 - 哪个更快 - INSTR或LIKE?