MySQL中沒有名為PATINDEX的函數
在MySQL中,可以使用LOCATE()
或者POSITION()
函數來實現類似PATINDEX的功能。這兩個函數都用于在一個字符串中查找子字符串的位置。它們的語法如下:
LOCATE(substr, str)
POSITION(substr IN str)
其中,substr
是要查找的子字符串,str
是原始字符串。這兩個函數都返回子字符串在原始字符串中首次出現的位置,如果未找到子字符串,則返回0。
例如,以下查詢將返回子字符串’bar’在字符串’foobarbar’中首次出現的位置:
SELECT LOCATE('bar', 'foobarbar'); -- 返回4
SELECT POSITION('bar' IN 'foobarbar'); -- 返回4
請注意,這些函數的索引是從1開始的,而不是從0開始。因此,在上面的示例中,'bar’在’foobarbar’中的位置是4,而不是3。