如果只是判断开头一个字符,可从ascii码表着手,比如数字0-9的ascii码是48-57,所以可以这样写:select * from table where ascii(字段)58 and ascii(字段)47
成都创新互联服务项目包括天柱网站建设、天柱网站制作、天柱网页制作以及天柱网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,天柱网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到天柱省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
function deletehtml($str) {
$str = trim($str);
$str = preg_replace("/P","1234a3211",$str);
$str = preg_replace("/p","1234a3211",$str);
$str = preg_replace("br/","1234a3211",$str);
$str = preg_replace("/(.[^]*)/","",$str);
$str = preg_replace("/([\r\n])[\s]+/","",$str);
$str = preg_replace("/--/","",$str);
$str = preg_replace("/!--.*/","",$str);
$str = preg_replace("/(quot|#34);/","",$str);
$str = preg_replace("/(amp|#38);/", "//",$str);
$str = preg_replace("/(lt|#60);/", "//",$str);
$str = preg_replace("/(gt|#62);/", "",$str);
$str = preg_replace("/(nbsp|#160);/", "",$str);
$str = preg_replace("/(iexcl|#161);/", "/\xa1/",$str);
$str = preg_replace("/(cent|#162);/", "/\xa2/",$str);
$str = preg_replace("/(pound|#163);/", "/\xa3/",$str);
$str = preg_replace("/(copy|#169);/", "/\xa9/",$str);
$str = preg_replace("/(\d+);/", "",$str);
$str = preg_replace("//", "",$str);
$str = preg_replace("//", "",$str);
$str = preg_replace("/\r\n/", "",$str);
$str = preg_replace("/1234a3211/", "/br//",$str);
return $str;
}
背景:用户表中的name存的是用户名字的拼音和中文。
需求:名字去除掉所有的中文字符。
解决方案:
通过CONVERT(name USING ASCII)把中文转换为?,然后再进行替换。
引申问题:怎么判断字段包含中文字符
方法1:查询CONVERT(name USING ASCII)转换为后有?的数据。
方法2:通过正则表达式查询,'[^ -~]'或'e[4-9][0-9a-f]{4}'或者'^(..)*(E[4-9])'表示含中文。
方法3:通过length()和char_length()返回值不同进行查询。
参考链接:
( )
select fields from 另一张表 as 另一张表 left join 一张表 as 一张表 ON 一张表.field=另一张表.field where 条件 我最多的SQL语句用jion写过100多行,才两张表,随便怎么查都行啦