这个SQL句子的结构及它的作用是什么,理不清啊

来源:百度知道 编辑:UC知道 时间:2024/05/03 04:31:11
表名:个人数据表
********************
姓名 个人ID 简历
********************
SQL语句如下:
select * from 个人数据表 where charindex(姓名,right(cast(简历 as varchar(8000)),len(cast简历 as varchar(8000)))-charindex(姓名,cast(简历 as varchar(8000)))))>2
ORDER BY 个人ID
-------分割线----------
可以解释一下这个句子的结构及它的作用吗?

case(简历 as varchar(8000))就是把简历字段转化成varchar类型

如果不转化就是:

charindex(姓名,right(简历,len(简历)-charindex(姓名,简历)))>2

right(简历, len(简历)-charindex(姓名,简历)) 取简历中第一个姓名的后面的部分(姓名后面部分)

charindex(姓名, 姓名后面部分)>2

就是说简历中含有至少两个姓名的,并且第一个姓名和第二个姓名相距两个字符的