在TSQL中,如何检查字符串包括“a”后跟“b”,“b”后面跟不是“c”?例如,这些字符串就是我想要的:
ab
cab
acb
这不是我想要的: ABC
请注意,您可以在示例中的字符之间插入任意数量的字符(但不要违反上述规则)。
答案 0 :(得分:6)
使用SQL通配符%
定义字符串中的任何字符(一个或多个),然后将其与LIKE
运算符组合:
WHERE txtcol LIKE '%a%b%' AND txtcol NOT LIKE '%b%c%'
答案 1 :(得分:0)
如果没有这样的话,我会这样做:
where charindex('a', string) < charindex('b', string) and
charindex('c', string) < charindex('b', string)
如果您需要角色,请包括:
where charindex('a', string) < charindex('b', string) and
charindex('c', string) < charindex('b', string) and
charindex('a', string) > 0
答案 2 :(得分:-1)
col1 like '%ab%' and col1 not like '%abc%'
答案 3 :(得分:-2)
试试这个:
WHERE string LIKE '%ab%' AND string NOT Like '%bc%'
答案 4 :(得分:-3)
试试这个:
char letter ='c';
if(letter =='z') nextChar ='a';否则如果(字母=='Z') nextChar ='A';
否则 nextChar =(char)(((整数)字母)+ 1);