在mysql中如何判断一个字符串中有某个字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在mysql中如何判断一个字符串中有某个字段相关的知识,希望对你有一定的参考价值。

我现在要做的是一个消息通知的功能,当管理员发送一条数据的时候会将选择的企业编号保存到一个字段中.企业登录的时候如果那个字段中有自己企业的编号就会收到提醒....该怎样写sql语句

参考技术A 以下语句返回
tab表所有的descr字段中最后的30个字符包含“财经”的结果:
select
*
from
tab
where
instr(right(descr,30),'财经')>0
判断就在
instr(right(descr,30),'财经')>0,先取右边30个字符,再判断中间是否包含你要的结果。
如果你要在程序里判断表里是否包含,可以写成这样
select
ifnull(sum(instr(right(c1,30),'财经')),0)as
c
from
tab
再取根据结果判断是否大于0
参考技术B where 字段名 like '%企业编号%';本回答被提问者采纳

SQL查询中,如何判断一个字符串字段的内容的长度

例如,表Table中有一个字段,名称ItemName,类型为字符串。现在我要把ItemName长度小于5的行列出来,并且只能用
Select * From Table Where .....
这样的格式,该如何写?
问题的关键在于,SQL语句中是否有获取字符串长度的函数?

实现的方法和详细的操作步骤如下:

1、首先,打开sql查询器,并连接相应的数据库表,例如store表,如下图所示。

2、其次,完成上述步骤后,单击工具栏的“查询”选项,然后输入如下代码,如下图所示。

3、最后,完成上述步骤后,单击“运行”选项来查询所需结果,如下图所示。这样,以上的问题就解决了。

参考技术A

len()函数可以统计出字段字符长度

select len(字段名) as 变量名 from 表名

输出上面AS的变量名:

等出的结果是

字段的字符数量,

现在环境没办法做测试,有这个函数应该是有办法实现你想要的,可以试试下面:

select 字段名 from 表名 where len(字段名)>5

试试

参考技术B

请采用以下 sql脚本信息 

select * from Table Where len(itemName) <5

请采纳!

参考技术C 楼上说的对
但最好对字符串预处理一下
加上trim去掉空格
select * from Table where len(trim(ItemName))<5
oracle底下用length表示字符长度,length('我')为1,
lengthb表示字节长度,lengthb('我')为2,看情况使用
参考技术D 可以使用SQL Server系统函数Len();
比如查询某个表某个字段内容长度小于5的行:
SELECT * FROM Table WHERE LEN(ColumnName)<5

以上是关于在mysql中如何判断一个字符串中有某个字段的主要内容,如果未能解决你的问题,请参考以下文章

Mysql字符串字段,如何判断是不是包含某个字符串

SQL查询中,如何判断一个字符串字段的内容的长度

where一个字段中不存在某个字符,怎么写mysql判断语句

sql中如何判断字符串中含有特殊字符

Mysql字符串字段判断是否包含某个字符串的方法

PHP MYSQL 怎么判断某个表的字段是不是存在