查看: 252|回复: 0

[Oracle数据库] oracle 函数判断字符串是否包含图片格式的实例代码

发表于 7 天前
尚学堂AD

首先是写一个分割字符串的函数,返回table类型

  1. CREATE OR REPLACE FUNCTION fn_split (p_str IN VARCHAR2, p_delimiter IN VARCHAR2)
  2. RETURN ty_str_split
  3. IS
  4. j INT := 0;
  5. i INT := 1;
  6. len INT := 0;
  7. len1 INT := 0;
  8. str VARCHAR2 (4000);
  9. str_split ty_str_split := ty_str_split ();
  10. BEGIN
  11. len := LENGTH (p_str);
  12. len1 := LENGTH (p_delimiter);
  13. WHILE j < len
  14. LOOP
  15. j := INSTR (p_str, p_delimiter, i);
  16. IF j = 0
  17. THEN
  18. j := len;
  19. str := SUBSTR (p_str, i);
  20. str_split.EXTEND;
  21. str_split (str_split.COUNT) := str;
  22. IF i >= len
  23. THEN
  24. EXIT;
  25. END IF;
  26. ELSE
  27. str := SUBSTR (p_str, i, j - i);
  28. i := j + len1;
  29. str_split.EXTEND;
  30. str_split (str_split.COUNT) := str;
  31. END IF;
  32. END LOOP;
  33. RETURN str_split;
  34. END fn_split;
复制代码

上面这个函数可以将字符串分割返回table

  1. create or replace function fn_ispng(
  2. strpng in varchar2
  3. ) return number is
  4. v_num number;
  5. begin
  6. WITH t1 AS
  7. (select * from table (fn_split(strpng,'.'))
  8. )
  9. select count(1) into v_num from t1 where t1.column_value in ('png', 'jpg','jpeg','gif','bmp','eps');
  10. return v_num;
  11. end fn_ispng;
复制代码

上面这个是判断是否是图片格式,的图片格式返回1

  1. select fn_ispng('dfdfd.png') from dual;
复制代码

以上所述是小编给大家介绍的oracle 函数判断字符串是否包含图片格式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对程序员之家网站的支持!



回复

使用道具 举报