CHARINDEX
是一個 SQL Server 函數,用于查找字符串中指定子字符串的位置
以下是在 MySQL 中使用 LOCATE
和 INSTR
函數的示例:
-- 使用 LOCATE 函數查找子字符串的位置
SELECT LOCATE('world', 'Hello, world!'); -- 返回 8
-- 使用 INSTR 函數查找子字符串的位置
SELECT INSTR('Hello, world!', 'world'); -- 返回 8
在復雜查詢中,你可以將這些函數與其他條件結合使用。例如,假設你有一個名為 employees
的表,其中包含 first_name
和 last_name
列。你想要查找所有名字中包含 “John” 的員工:
-- 使用 LOCATE 函數
SELECT * FROM employees WHERE LOCATE('John', first_name) > 0;
-- 使用 INSTR 函數
SELECT * FROM employees WHERE INSTR(first_name, 'John') > 0;
這些查詢將返回所有名字中包含 “John” 的員工記錄。請注意,LOCATE
和 INSTR
函數在處理大小寫時可能會有所不同。在某些情況下,你可能需要使用 LOWER
或 UPPER
函數來確保正確的比較。