PostgreSQL 9.3 사용.PostgreSQL에서 filename의 파일 확장자를 얻는 방법은 무엇입니까?
qwerty.swf
some.image.jpg
some.other.image.jpg
이 칼럼도 null 값을 허용 : 같은 파일 이름 값을 가진 열이 .
SQL 쿼리에서이 열의 파일 확장명을 가져 오는 방법은 무엇입니까?
PostgreSQL 9.3 사용.PostgreSQL에서 filename의 파일 확장자를 얻는 방법은 무엇입니까?
qwerty.swf
some.image.jpg
some.other.image.jpg
이 칼럼도 null 값을 허용 : 같은 파일 이름 값을 가진 열이 .
SQL 쿼리에서이 열의 파일 확장명을 가져 오는 방법은 무엇입니까?
시도 :
with mytable as (
select unnest(string_to_array($$qwerty.swf
some.image.jpg
some.other.image.jpg
test
$$,E'\n')) filename)
select filename,substring(filename from '\.([^\.]*)$')
from mytable
regexp
을 사용하십시오.
또는 substring
, reverse
및 strpos
의 조합
select regexp_matches(filename,'\.(\w+)$')
from tablename
where filename ~ '\.' --check if filename has atleast 1 . character in it
.
select reverse(substring(reverse(filename) from 1 for strpos(reverse(filename),'.')-1))
from tablename
where filename ~ '\.' --check if filename has atleast 1 . character in it
위험합니다. 패턴이 일치하지 않으면 regexp_matches 행이 삭제됩니다. –
한 행마다 파일 이름 또는 쉼표로 구분? – jarlh
행 당 하나의 파일 이름 – kostepanych