定義:sql
PATINDEX()返回模式在指定表達式中第一次出現的起始位置;若是在全部有效的文本和字符數據類型中都找不到該模式,則返回零。express
語法:學習
PATINDEX ( '%pattern%' , expression )測試
參數:spa
pattern:包含要查找的序列的字符表達式。 能夠使用通配符;但 pattern 以前和以後必須有 % 字符(搜索第一個或最後一個字符時除外) 。 pattern 是字符串數據類型類別的表達式 。 pattern最多包含 8000 個字符 。server
expression 是字符串數據類型類別的表達式 。blog
返回值:字符串
bigint(若是 expression 的數據類型爲 varchar(max) 或 nvarchar(max));不然爲 int 。get
原文表述:「若是 pattern 或 expression 爲 NULL,則 PATINDEX 返回 NULL 。」是部分錯誤的。io
正確表述:
若是 pattern 爲 NULL,則 PATINDEX 返回 NULL 。
若是 expression 爲 NULL,則SSMS會報錯 。
PATINDEX 的起始位置爲 1。
例:
※不區分大小寫
參考原文地址:https://docs.microsoft.com/zh-cn/sql/t-sql/functions/patindex-transact-sql?view=sql-server-2017
聲明:本文是本人查閱網上及書籍等各類資料,再加上本身的實際測試總結而來,僅供學習交流用,請勿使用於商業用途,任何由此產生的法律版權問題概不負責,謝謝。