'프로그래밍'에 해당되는 글 100건
- 2012/12/07 용비 OAuth 1.0
- 2012/11/29 용비 PostgreSQL 구문 정리
- 2012/04/20 용비 스스로 학습-진화하는 프로그램
- 2010/11/16 용비 Open API Design Guideline
- 2010/09/09 용비 SQL Quiz -2-
Table 5개, Servlet 2개, REST WebService 2개, API 4개.
가장 귀찮은 부분은 서명을 하는 부분.
그런데 개발자들에게 서명을 쉽게 하도록 하기 위해서 대부분 Library를 제공하는데,
대부분이 Java를 기반으로 작성되어 이것이 또 문제다.
갈수록 모바일 환경이 대세가 되어가는 이때에,
Java가 커버할 수 있는 부분은 안드로이드일 뿐, 웹이나 iOS 지원은 불가하다.
그래서 나온 것이 2.0이겠지만 그렇다고 SSL 인증서를 Server에다 설치할 수도 없고..
여러가지 고민을 하고 표준 작업을 진행하고 있겠지만,
Server Side를 구축하는 것과, Client 개발자의 개발 편의성을 만족시키는 절충점을 찾기란 역시 어렵다.
즉, 스스로 학습하고 지식을 쌓아 이해하며 결론을 도출해 내는 엔진이 가장 핵심이 아닐까.
갑자기 이런 생각이 들었다.
내가 아기였을 시절에는 부모님이 말씀해 주시는 여러 단어들을 들음으로써 말을 배우기 시작했을 것이다. 그리고 단어가 모여 어절을 이루고, 어절이 모여 문장을 이루고 문장이 모여 단락을 이루고... 결국 장문의 글을 읽고 이해하게 되었으리라.
그렇다면, 아기였을 때, 아무런 의미를 몰랐을 때, 부모님이 말씀해 주셨던 단어는 어떻게 내 머릿속에 저장되었을까?
아마도 2가지 큰 부류로 나눌 수 있지 않을까.
파장으로 이루어지는 '소리'와 그에 해당하는 '행동'.
사람의 행동을 프로그램으로 당장 어찌할 수 없으니 소리에 대해서 공통점을 뽑아내 어원으로 삼으면 단어를 스스로 학습하는 프로그램이 가능하지 않을까.
그래서 어느 나라 언어든 가장 기본이 되는 형태소별로 발음에 대한 어원에 해당하는 주파수를 가지고 있고, 그걸 기반으로 빠른 시간내에 검색해서 우리가 들을 수 있는 '소리'로 재구성해 낼 수 있다면 Text To Speech나 Speech To Text를 완벽하게 구현할 수 있지 않을까....
수십만 단어에 대한 사전 데이터베이스 없이도 가능하지 않을까 문득 생각이 들었다.
한번 만들어봐야겠다.
여기저기 구글링으로 문서를 찾아 읽어보니,
평소 내가 생각하고 있던 것과 같은 부분도 있고, 다른 부분도 있다.
하지만, 고민하고 생각할 가치는 충분히 있어 보인다.
배울 점도 많고.
반드시 내가 설계하고 작성한 Guideline을 적용하여 만들어진다는 보장은 없지만,
나름 개인적으로 유익하고 즐거운 공부 경험이 된거 같다.
이화식 선생님이 대표로 있는 En-Core 사이트 두번째 퀴즈 문제.
아래와 같은 SAMPLE 테이블이 있다고 하자.
성명 |
시작일 |
종료일 |
홍길동 |
19961001 |
19981230 |
홍길동 |
19981230 |
19990605 |
홍길동 |
19990605 |
19991002 |
홍길동 |
20000201 |
20000301 |
홍길동 |
20000501 |
99991231 |
김동훈 |
19910106 |
19910731 |
김동훈 |
19910731 |
19940201 |
김동훈 |
19940201 |
19941021 |
김동훈 |
19941021 |
19961031 |
김동훈 |
19990501 |
20000331 |
김동훈 |
20000331 |
99991231 |
마동탁 |
19980103 |
19980727 |
마동탁 |
19980727 |
20000103 |
마동탁 |
20000103 |
20000601 |
마동탁 |
20000601 |
99991231 |
. |
. |
. |
. |
. |
. |
어떤 특정 사원은 이력이 중간에 끊어진 경우가 있는데 이러한 끊어진 시작일과 종료일을 추출하고자 한다.
사원별로 끊어진 시작일과 종료일을 추출하면 아래와 같은 결과가 나타난다.
성명 |
시작일 |
종료일 |
홍길동 |
19991002 |
20000201 |
홍길동 |
20000301 |
20000501 |
김동훈 |
19961031 |
19990501 |
●문제 : 위와 같은 결과를 추출할 수 있는 한개의 SQL문을 작성하시오
내가 작성한 답안 :
select a.name, b.end, a.start
from test.quiz2 a, test.quiz2 b
where a.start <> b.end
and a.rowid - 1 = b.rowid
and a.name = b.name
group by b.rowid;
모범답안 :
select name, end_r start_date, start_l end_date
from (select name, sum(decode(no,1,start_dt)) start_l, sum(decode(no,1,end_dt)) end_l,
sum(decode(no,2,start_dt)) start_r, sum(decode(no,2,end_dt)) end_r
from (select name, start_dt, end_dt, rownum rn
from (select name, start_dt, end_dt
from quiz2
order by name, start_dt, end_dt )) x, copy_t y
where y.no <= 2
group by name, decode(no,1,rn,rn+1)
)
where end_r <> start_l;
댓글을 달아 주세요
댓글 RSS 주소 : http://www.yongbi.net/rss/comment/522