可能重复: 如何在 MySQL 的 instr() 中应用通配符? https://stackoverflow.com/questions/1905119/how-to-apply-wildcard-in-instr-in-mysql
可能的重复链接显示了一个与我当前的查询完全相同的查询。但是,我找不到一种方法来证明这一点敏感的匹配。 :\
SELECT COUNT(*) FROM users WHERE INSTR(flags, 'T') > 0;
我得到的数字是 46,这显然是错误的。它计算标志中的每个实例“T”,无论它是大写还是小写。
它按照 MySQL 文档工作。我在 MySQL 文档中发现一些内容,说要在变量上放置“@”符号以使其区分大小写匹配。但是,我在 @'T' 上尝试了此操作以形成以下查询:
SELECT COUNT(*) FROM users WHERE INSTR(flags, @'T') > 0;
我得到的计数为零。
有人能为我解释一下吗? :)
EDIT:
忘记说了,抱歉。我也尝试过一个LIKE '%T%'
作为 where 子句,它仍然失败并返回与(INSTR(flags, 'T') > 0)
;
我相信这会起作用
SELECT COUNT(*) FROM users WHERE INSTR(binary flags, 'T') > 0;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)