首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL LOCATE 與 POSITION 函數詳解:字串查找實戰

     編輯:MySQL 資料庫相關知識

語法


LOCATE(substr, str)
POSITION(substr IN str)  -- 標準 SQL 寫法,功能相同

返回 substr 在 str 中首次出現位置(從 1 起算),不存在返回 0。

基本用法


SELECT LOCATE('bar', 'foobarbar');  -- → 4
SELECT LOCATE('xbar', 'foobar');    -- → 0

指定起始位置


LOCATE(substr, str, pos)  -- 從 pos 位置開始查找
SELECT LOCATE('bar', 'foobarbar', 5);  -- → 7

版本差異與大小寫敏感

  • MySQL 3.23:始終區分大小寫
  • MySQL 4.0+:任一參數為二進制字串時才區分大小寫,否則不區分
  • 函數多位元組安全

典型應用場景


-- 查找 colum1 包含自身子串的行(示例邏輯,實際視業務調整)
SELECT * FROM tablename WHERE LOCATE(colum1, colum1, 1) > 0;
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved