Heim > Datenbank > MySQL-Tutorial > mysql查询字段中带空格的值的sql语句

mysql查询字段中带空格的值的sql语句

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 16:18:54
Original
2564 Leute haben es durchsucht

(1)mysql replace 函数 语法:replace(object,search,replace) 意思:把object中出现search的全部替换为replace 代码如下 update `news` set `content`=replace(`content`,' ','');//清除news表中content字段中的空格 这样就可以直接用like查询了。 (2)mysql

   (1)mysql replace 函数

  语法:replace(object,search,replace)

  意思:把object中出现search的全部替换为replace

 代码如下  

 

update `news` set `content`=replace(`content`,' ','');//清除news表中content字段中的空格 这样就可以直接用like查询了。

  (2)mysql trim 函数

  语法:trim([{BOTH | LEADING | TRAILING} [remstr] FROM] str)

  以下举例说明:

 代码如下  

mysql> SELECT TRIM(' phpernote  '); 

-> 'phpernote' 

mysql> SELECT TRIM(LEADING 'x' FROM 'xxxphpernotexxx'); 

-> 'phpernotexxx'

mysql> SELECT TRIM(BOTH 'x' FROM 'xxxphpernotexxx'); 

-> 'phpernote' 

mysql> SELECT TRIM(TRAILING 'xyz' FROM 'phpernotexxyz'); 

-> 'phpernotex' 

  当我们在使用sql查询的时候,如果数据库中的这个字段的值含有空格(字符串内部,非首尾),或者我们查询的字符串中间有空格,而字段中没有空格。那么我们很有可能就什么都查不到。假如有下面的一张表:

  表名

  id url title content

  这张表里面,第一和第二条记录的title部分是有空格的,如果我们并不知道,或者由于内容的不能,有无空格有很大的不确定性:

 代码如下  

select * from table where title = '李杨技术博客';
select * from table where title like '%李杨技术博客%';

  以上两句sql均无法查询出正确的结果,那么我们应该怎么写呢?

  请看下面:

 代码如下  

select * from table where trim(replace(title,' ','')) = trim(replace('李杨技术博客',' ',''));
select * from table where trim(replace(title,' ','')) like trim(replace('%李杨 技术博客%',' ',''));

  trim的作用是去掉字符串收尾的空格,replace的作用是去掉字符串内部的空格。

  这样就可以正确的进行匹配了,,如果不希望给mysql太多压力,条件部分的对空格的处理我们可以在程序中实现。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
So ändern Sie MySQL in MySQL
Aus 1970-01-01 08:00:00
0
0
0
MySQL-Startfehler unter Centos
Aus 1970-01-01 08:00:00
0
0
0
MySQL stoppt den Prozess
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage