database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Devel 5481 게시물 읽기
No. 5481
pl/python 한글 초성 구하는 함수
작성자
김상기(ioseph)
작성일
2004-08-18 05:38ⓒ
2004-08-18 05:41ⓜ
조회수
12,253
첨부파일
파일이름크기Info 
initial_ko.sql1.2 KB  
 
mydb=# create table tel ( name text, tel text);
CREATE TABLE
Time: 31.841 ms
mydb=# copy tel from stdin with delimiter ' ';
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself.
>> 홍길동 123-1234
아무개 234-2345
김철수 345-3456
박영희 456-4567
권훈 456-4567
이순희 678-6789
한나라 778-7878>> >> >> >> >> >>
>> \.
Time: 5118.999 ms
mydb=# \i initial_ko.sql
CREATE FUNCTION
Time: 7.230 ms
mydb=# select initial_ko(name), count(*) from tel group by initial_ko(name) order by 1;
 initial_ko | count
------------+-------
 ㄱ         |     2
 ㅂ         |     1
 ㅇ         |     2
 ㅎ         |     2
(4 rows)

Time: 3.873 ms

 

mysql 게시판을 잠깐 봤다가 재미난 질문이 하나 있어 이렇게 함수를 만들어보았습니다.

plpython 으로 작성되었습니다. 사용 언어는 utf-8 유니코드만을 대상으로 하고 있습니다. 만일 euc-kr 코드를 사용하고 있다면, convert 함수를 이용해서 일단 인자는 euc-kr에서 utf-8로 리턴값은 utf-8에서 euc-kr로 변환해서 사용해야할 것입니다.

 

plpython 은 반드시, 2.0 이상 python을 사용해서 컴파일 되어야합니다. unicode를 이 버전부터 사용할 수 있거든요.

 

이 글에 대한 댓글이 총 2건 있습니다.

plpytion이 아마 pgsql에서 쓰기 편한 언어인가보네요

PL/SQL하고 구문이 거의 동일해서..

Oracle 에서 배껴쓰기 좋겠습니다 ^^;

 

잘배우고 갑니다 ^^

박순성(딱따구리)님이 2004-08-18 09:55에 작성한 댓글입니다.

PostgreSQL 에서는 Procedural Language로 여러가지가 있습니다.

plpgsql - 이놈이 오라클의 plsql 하고 많이 닮았습니다.

plpython - 함수 구현 부분의 언어로 python을 사용하는 놈입니다. python의 튼튼한 객체지향을 그대로 사용할 수 있지요. - 개인적으로 제일 좋아하는 놈

plperl - plpython 처럼 perl 로 구현된 놈입니다.

그외, pljava, plphp 등이 실험중이라고 하네요.

 

이처럼 Procedural Language 쪽의 확장이 다른 RDBMS 보다 탁월하게 쉽습니다.

 

순성님이 이야기하는 것은 plpgsql 입니다.

 

김상기(ioseph)님이 2004-08-18 21:13에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6043문자열 첫글자(영문) 또는 첫글자의 초성(한글) 추출
신기배
2005-04-13
14810
5823발음 비슷한 한글을 같은 글자로 처리하는 함수 [2]
김상기
2005-01-24
12578
5702PostgreSQLDirect .NET Data Provider
정재익
2004-11-23
13437
5481pl/python 한글 초성 구하는 함수 [2]
김상기
2004-08-18
12253
5297crypt 함수 구현하기 [1]
이상호
2004-04-17
10445
42301차원 정수형 배열 조작 함수들 [1]
김상기
2002-06-17
12950
4223PL/pgsql로 구현한 fulltext index
김상기
2002-06-11
13971
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다