题目:查询课程名中的第15个字符是‘理’课程信息
这道题目有好几个做法
做法一
--检索子串中从第15个字符开始数起的第一个字符为理的数据
select * from course where substring(Cname,15,1)='理'
做法二
--检索数据中‘理’的下标是15的数据
select * from course where charindex('理',Cname)=15
做法三
--检索数据中第一次出现理的下标是15的数据
select * from course where patindex('%理%',Canme)=15
做法四
--检索数据从左往右数第十五个字符,再从当前位置从右往左数一个字符是‘理’的数据
select * from course where right(left(cname,15),1)='理'
小结
PATINDEX和CHARINDEX的区别
PATINDEX函数支持使用通配符来进行搜索,然而CHARINDEX不支持通佩符
CHARINDEX函数返回一个整数,返回的整数是要找的字符串在被找的字符串中的位置
PATINDEX函数返回字符或者字符串在另一个字符串或者表达式中的起始位置