作用:like binary 用来区分大小写。其他作用没了解过
如下:
select * from hats where job like '%C%'
select * from ahts where job like binary '%C%'
具体实例://$str="abc"
$str="张"
// preg_match("/[\x80-\xff]/", $path)判断中文,binary不支持中文的使用
if(preg_match("/[\x80-\xff]/", $path)) {
$sql = "SELECT id FROM student WHERE name like '$str"//却掉 binary
}else{
$sql = "SELECT id FROM student WHERE binary name like '$str'"
}
通常我们会遇到一个字段中存储多个相似单词,比如这样:
我们通过like进行查询时 like ‘%teacher%’,但是大写的Teacher也会被我们找到;
原因:由于sql在查询时默认不会进行大小写区分;
这时我们可以使用BINARY类型转换运算符;
BINARY 运算符将紧随其后的 string 转换为 二进制字符串。
主要用来强制进行按字节进行比较(byte by byte),字节而不是字符的字符。
这使得字符串比较 是区分大小写 的, 不管原始的列定义是否是 BINARY 或者 BLOB。
BINARY 也 对字符串末尾的空格敏感 。
sql可以这样写:select * from 表 where name like binary '%teacher%'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)