sql语句中查找某字段中含有某字符串的语句怎么写?

来源:百度知道 编辑:UC知道 时间:2024/06/06 17:32:24
改表中的文件名filename字段中有很多记录是乱码的。有很多?????。
现在我要查找出所有filename中含有?的记录出来,只要含有?,不管是一个?还是多个?。都查找出来。
于是写了以下sql:
select filename from oa_file where filename like '%?%';
结果查出来的结果不符。只有含有一个"?"的可以查出来。请问怎么写呢?
上午解决了。原来数据库中很多?是中文的?问号。。。
我写成这样就ok了。
select * from oa_file where filename like '%??%';
谢谢大家!!!!

select filename from oa_file where filename not like '%[!-¥]%'

或者这个:

select filename from oa_file where filename not like '%[!-?]%'

出现的问题就是问号和问好也是不一样的,比如说英文标点半角的问号是“?”,英文标点全角的问号是“?”但是中文半角问号是“?”中文全角的问号是“?”

这些都是不一样的,你搜出来的都是带有英文半角问号的文件。

扩展资料:

SQL中的字段“包含”与“包含于”字符串的写法

1、查询表中某字段值“包含”某字符串的所有记录的方法

假如表中有一个name字段,查询name包含“张三”的所有记录,可以这样写sql:

Stirng strsql="SELECT * FROM 表名 WHERE name LIKE