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

2024-11-02 08:40:34
推荐回答(5个)
回答(1):

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 ’%"+"张三"+"%’";

2、查询某字段值“包含于”某个字符串的所有记录的方法弯谨禅

如果查询表中name字段包含于字符串“张三是个好学生”的所有记录,可以这样写sql:

String strsql="SELECT * FROM 表名 WHERE INSTR(’张三是个好学生’,name)>0";

即可查询,记录中的name字段值中包括:张、三、是、个、晌岩好、学、生、张三、......等所有记录。

注埋尘:以上sql字符串中请将全角符号改为半角符号。

回答(2):

select filename from oa_file where filename like '%?%';
你这姿含句话肯定是没有问题的——可能出现的问题就是问号和问好也睁册培是不一样的!
比如说英文标点悉唯半角的问号是“?”,英文标点全角的问号是“?”
但是中文半角问号是“?”中文全角的问号是“?”
这些都是不一样的。你搜出来的都是带有英文半角问号的文件。
以上为我的想法。

回答(3):

你试试这个吧:
select filename from oa_file where filename not like '%[!-¥]%'
如果不行就再试试这个:
select filename from oa_file where filename not like '%[!-�塌州]%'

请注念亏意复制LIKE 后面的字符,不要自已写。
原理就是用两个特殊字符包括所有可正常显仔衫神示的字符

回答(4):

select filename from oa_file where filename like '%?%'答雹;
改成
select filename from oa_file where filename like '%''?'银旁'%'
试下..

记锋举橡得好像?是个占位符吧

回答(5):