首页 > 解决方案 > 如何使用 instr() 搜索多个子字符串

问题描述

我正在尝试使用 instr() 获取给定字符串中文件扩展名的位置。这可能是许多可能的扩展,所以我需要搜索多个子字符串(例如“jpg”、“mp4”...)。

我尝试了 OR 语句,例如。instr(字符串,“jpg”或“mp4”),没有运气。

SELECT instr(column, "jpg") FROM table;

欢迎任何有关解决方案或替代方案的想法。

标签: sqlsqlitesubstringinstr

解决方案


这就是你需要的。

SELECT CASE WHEN instr(column, "jpg") > 0 
   THEN instr(column, "jpg") WHEN instr(column, "mp4") > 0 
   THEN instr(column, "mp4") ELSE 0 END  FROM table;

推荐阅读