J'ai essayé d'utiliser Instr
pour cela, mais cela n'a pas fonctionné, donc j'ai trouvé le supposé être équivalent en utilisant PatIndex
et CharIndex
, cependant, j'ai un problème ici quand je lance ceci:
SELECT PATINDEX(`http://www.stackoverflow.com`,'%.com%')
Cela renvoie 0
SELECT CHARINDEX(`http://www.stackoverflow.com`,'%.com%')
Cela renvoie 0
SELECT PATINDEX(`http://www.stackoverflow.com`,'.com')
Cela renvoie 0
SELECT CHARINDEX(`http://www.stackoverflow.com`,'.com')
Cela renvoie 0
Comment puis-je faire fonctionner cela comme InStr
?
Si mon calcul est correct, il devrait returnner 25
au lieu de 0
, quelqu'un sait pourquoi ce n'est pas?
Vous l'avez inversé.
select patindex('%.com%', 'http://www.stackoverflow.com'); select charindex('.com', 'http://www.stackoverflow.com');
Soyez prudent lorsque vous utilisez ces fonctions dans les fonctions de colonne calculées. Parce qu'ils sont non déterministes.
https://technet.microsoft.com/en-us/library/aa214775(v=sql.80).aspx