프로그램 사용/oracle2014. 6. 17. 16:02
오라클 공식 select 문법 구조
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_10002.htm]
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/img/subquery.gif


[ subquery_factoring_clause ]
SELECT
   [ hint ]
   [ { { DISTINCT | UNIQUE }
     | ALL
     }
   ]
   select_list
   FROM { table_reference [, table_reference ]...
               | join_clause
               | ( join_clause ) 
               }
   [ where_clause ]
   [ hierarchical_query_clause ]
   [ group_by_clause ]
   [ HAVING condition ]
   [ model_clause ]
   [ { UNION [ ALL ]
     | INTERSECT
     | MINUS
     }
     (subquery)
   ]
   [ order_by_clause ]
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/img_text/subquery.htm]  

hierarchical
[ START WITH condition ]
CONNECT BY [ NOCYCLE ] condition
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/img_text/hierarchical_query_clause.htm]

outer join
[ query_partition_clause ]
{ outer_join_type JOIN
| NATURAL [ outer_join_type ] JOIN
}
table_reference [ query_partition_clause ]
[ ON condition
| USING ( column [, column ]...)
]
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/img_text/outer_join_clause.htm]


inner join
{ [ INNER ] JOIN table_reference
    { ON condition
    | USING (column [, column ]...)
    }
| { CROSS
  | NATURAL [ INNER ]
  }
  JOIN table_reference
}
[링크 : http://docs.oracle.com/cd/B19306_01/server.102/b14200/img_text/inner_cross_join_clause.htm] 

'프로그램 사용 > oracle' 카테고리의 다른 글

sql order by  (0) 2014.06.01
sql outer join  (0) 2014.06.01
sql group by  (0) 2014.05.30
sql distinct  (0) 2014.05.29
oracle 대소문자 구분없이 검색하기  (0) 2014.05.28
Posted by 구차니
apmsetup은 구 버전의 php를 사용하고 있어서
신버전 pydio가 요구하는 php 버전을 만족하지 못해 xampp로 설치한다.

다운로드는 아래
[링크 : http://sourceforge.net/projects/xampp/files/]
[링크 : http://sourceforge.net/projects/ajaxplorer/files/pydio/stable-channel/


테스트 환경
OS : Windows 7 64bit 한글
APP : XAMPP 1.8.3.3 / Pydio 5.2.3


Step 1. 귀찮다 걍 깐다.. 근데 윈도우 디펜더 때문에 경고하는 거 같은데 귀챦으니 걍 Yes


Step 2. 걍 누른다.


Step 3. 기본값은 이렇지만 Pydio는 php만 있으면 되므로


Mysql이라던가 FTP라던가 다 빼버리고 설치


Step 4. 귀찮으니 걍 기본 설정으로 궈궈


Step 5. 난 착한 아이가 아니니 Learn more 는 체크 끄고


Step 6. 걍 누르면 깔리겠지


Step 7. 열심히 깔려주세요


Step 8. 일단 제어판은 실행해주는게 편하니 냅두고 Finish


Step 9. Start 누르면 아파치가 실행된다.


설정파일은 우측의 Explorer을 통해서 conf 폴더 갈수도 있지만
이렇게 간단하게 연결이 되어있어서 편하긴 한데... pydio를 하면서 apache / php 설정을 건드릴 일은 크게 없으니..


Step 10. 일단 기본 경로로 설치했기에
c:\xampp\htdocs가 웹페이지 루트가 되고 이 곳에 pydio를 받아서 압축 해제후
편리하게 pydio 라던가 원하는 폴더명으로 변경해준다.






가장 아래의 Step 18~20을 먼저 하면 좋다.

php.ini
기본 설정
session.gc_maxlifetime=1440
post_max_size=8M
upload_max_filesize=2M 

변경(세션 유지 시간 2시간, 업로드 다운로드 4G 까지 설정)
단 인터넷 속도가 느릴 경우를 고려해서 세션 유지 시간을 더 늘릴필요가 있다. 

session.gc_maxlifetime=7200
post_max_size=4G
upload_max_filesize=4G 



bootstrap_conf.php
추가

define("AJXP_LOCALE", ""); 





Step 12. 걍 http://localhost/pydio 로 접속한다.
그리고 상단에 click here to continue to Pydio를 누르면 설치 시작!


Step 13. 한글지원과는 전혀 상관없는 옵션이니 편한대로 설정


Step 14.  관리자 계정을 설정하고


기본언어는 표시될 메뉴 언어이니 적당히 골라주고


가장 가볍게 사용할거라서 DB없이 사용할 것이기에 No DB로 설정한다.


추가계정은 나중에 해도 되니 일단 패스


설정이 되는 중이니 냅둔다.


Step 15. 위에서 생성한 계정으로 로그인 한다.


Step 16. 로그인 하면 이제 이런식으로 대시보드가 뜨는데 설정으로 궈궈


Step 17. 하드 디스크 상에 경로를 복사해서 붙여 넣어주면 되나
아래와 같이 경로상에 한글이 들어가면 안되는 것으로 보여진다.(옵션을 어떻게 바꾸면 될지도 모르지만..)
그냥 단순하게 사용하려면 c:\sharedDocs 이런식으로 영문으로 폴더를 생성하고 그 경로를 넣어준다.



Step 18. 한글로 된 폴더나 파일이 있을 경우 에러가 발생하게 되는데

pydio의 bootstrap_conf.php의 해당 라인에 define("AJXP_LOCALE", "");을 추가해주면 된다.


Step 19. 업로드 파일 용량 제한
2011/01/03 - [프로그램 사용/ajaxplorer] - ajaxplorer 외부에서 업로드시 용량제한

Step 20. 로그인 세션 유지 시간 제한
2011/07/28 - [프로그램 사용/ajaxplorer] - Ajaxplorer 세션 자동종료 막기 혹은 시간 늘리기





session.gc_maxlifetime=7200
post_max_size=4G
upload_max_filesize=4G 


Posted by 구차니
실험적으로 mercurial을 홀로 써보는 중..
도움이 되는 문서 링크이다.


[링크 : http://hginit.com/00.html] 번역본은 아래에
  [링크 : http://blog.daum.net/leejaku/301] Subversion 사용자를 위한 Mecurial 안내서
  [링크 : http://blog.daum.net/leejaku/302] Mercurial 기초 다지기
  [링크 : http://blog.daum.net/leejaku/303] 팀을 위한 Mercurial 셋팅
  [링크 : http://blog.daum.net/leejaku/306] Mercurial 실수를 되돌리는 법
  [링크 : http://blog.daum.net/leejaku/307] Mercurial의 병합
  [링크 : http://blog.daum.net/leejaku/308] Mercurial의 레포지토리 구조

[링크 : http://helloworld.naver.com/helloworld/1011] git vs hg
[링크 : http://tortoisehg.readthedocs.org/en/latest/

'프로그램 사용 > Version Control' 카테고리의 다른 글

git for windows  (0) 2014.06.27
tortoiseHG / mercurial 사용하기  (0) 2014.06.25
svn to git migration 가이드  (0) 2014.06.02
google code - svn, mercurial  (0) 2014.05.24
mercurial SCM  (0) 2014.05.02
Posted by 구차니
조만간 쓸일이 있을듯 한데..
현재 까지 알거나 해본건

as 키워드(alias) - oracle에서는 as 없이(그런데 버전에 따라서 SQL 99를 지원하면 as를 넣어주는게 좋다)
rownum 내장 변수 - mysql에서는 limits 사용

정도?

[링크 : http://visionboy.me/main/board_view.php?no=407&page=1&tb_id=bd6]

Posted by 구차니
svn에 비해서 로컬에서 할 수 있는 작업이 더 늘기에 쓰기 어렵다는데
clone을 통한 다른 revision에 대한 history가 빠르다거나, 인터넷이 끊어져도 커밋할 수 있다거나 등의
장점이 있어서 한번 써보려고 조사중!

[링크 : https://groups.google.com/forum/#!topic/xper/kt1znmz82JA]
[링크 : http://blog.doortts.com/141]

'프로그램 사용 > Version Control' 카테고리의 다른 글

tortoiseHG / mercurial 사용하기  (0) 2014.06.25
tortoiseHG , git vs mercurial 관련 문서  (0) 2014.06.08
google code - svn, mercurial  (0) 2014.05.24
mercurial SCM  (0) 2014.05.02
git 간편 설명서  (0) 2014.03.06
Posted by 구차니
가장 많이 쓰는건 ASC / DESC 이지만..
값이 null이 있을 경우
null이 먼저 출력되고 양수 / 0 / 음수로 출력이 되어 의도한 것과 다르게 나왔다.
그래서 nulls last를 해줌으로서
원하는 대로 값을 출력할 수 있게 된다.

ORDER BY { column-Name | ColumnPosition | Expression }
    [ ASC | DESC ]
    [ NULLS FIRST | NULLS LAST ]
    [ , column-Name | ColumnPosition | Expression 
    [ ASC | DESC ]
    [ NULLS FIRST | NULLS LAST ]
    ] * 

ASC
Specifies that the results should be returned in ascending order. If the order is not specified, ASC is the default.
DESC
Specifies that the results should be returned in descending order.
 
[링크 : http://docs.oracle.com/javadb/10.6.2.1/ref/rrefsqlj13658.html


+ 2014.06.02 추가
order by col1, col2 desc 라고 할 경우
col1은 asc col2는 desc로 정렬된다.
위에 BNF을 보면 컬럼명에 따라서 각각 desc nulls last 를 적용해야 한다. 

'프로그램 사용 > oracle' 카테고리의 다른 글

oracle select  (0) 2014.06.17
sql outer join  (0) 2014.06.01
sql group by  (0) 2014.05.30
sql distinct  (0) 2014.05.29
oracle 대소문자 구분없이 검색하기  (0) 2014.05.28
Posted by 구차니
아우터 조인은 왜 쓰나 했는데,
모든 필드가 not null이 아니기에
값이 존재하지 않는 필드까지 포함해서 값을 꺼내야 할 경우(그러니까 목록이라던가?)
상당히 유용하게 사용이 되어진다.

[링크 : http://whdvy777.tistory.com/entry/view-뷰-생성-수정-인라인뷰inline-view-TopN-실습]
[링크 : http://wiki.gurubee.net/pages/viewpage.action?pageId=6259015]


'프로그램 사용 > oracle' 카테고리의 다른 글

oracle select  (0) 2014.06.17
sql order by  (0) 2014.06.01
sql group by  (0) 2014.05.30
sql distinct  (0) 2014.05.29
oracle 대소문자 구분없이 검색하기  (0) 2014.05.28
Posted by 구차니
프로그램 사용/oracle2014. 5. 30. 17:41
group by는 그룹별로 정렬하는 것인데

어떻게 사용하냐에 따라서
distinct + sum을 한번에 처리할 수 있는 좋은 명령어이다!!

아래는 장르별로 추천수를 합산하여 장르별 점수를 내림차순으로 정렬한다.
가장 인기있는 장르 순서를 출력하는 sql 문이라고 해야 하려나?
<select id="selectTopGenre" resultClass="java.lang.String">
SELECT GENRE_1, SUM(SCORE)
FROM MUSIC_DB, MUSIC_SCORE
WHERE MUSIC_SCORE.MUSICID = MUSIC_DB.MUSICID AND MUSIC_SCORE.SCORE = 1
GROUP BY GENRE_1
ORDER BY SUM(SCORE) DESC
</select> 

아무튼 특이한건.. order by의 경우 score로 필드가 아닌 sum(score)라고 해야 제대로 정렬이 된다 .
score는 개별 필드고 sum(score)는 합산된 결과에 대한 필드라서 이려나? 

[링크 : http://www.w3schools.com/sql/sql_groupby.asp]


+ 2014.06.01 추가
group by를 사용시에는
select에 group by에서 사용한 항목만 사용이 가능해진다.

[링크 : http://www.itmembers.net/board/view.php?id=oracle&...desc=asc&no=29] group by 
[링크 : http://docs.oracle.com/javadb/10.6.1.0/ref/rrefsqlj32654.html]

'프로그램 사용 > oracle' 카테고리의 다른 글

sql order by  (0) 2014.06.01
sql outer join  (0) 2014.06.01
sql distinct  (0) 2014.05.29
oracle 대소문자 구분없이 검색하기  (0) 2014.05.28
oracle 타입 - nvarchar2 varchar2  (0) 2014.05.20
Posted by 구차니
프로그램 사용/oracle2014. 5. 29. 23:01
distinct 키워드는 결과로 뽑아낼 목록을
집합으로 만들어서 중복을 제거하고 말그대로 '분류'를 뽑아낸다.

예를들어


 장르
 팝
 팝
 클래식
 클래식

을 distinct로 돌리면
팝, 클래식 두개만 나오게 된다.

[링크 : http://www.w3schools.com/sql/sql_distinct.asp]
[링크 : http://technet.microsoft.com/ko-kr/library/ms187831(v=sql.105).aspx]

'프로그램 사용 > oracle' 카테고리의 다른 글

sql outer join  (0) 2014.06.01
sql group by  (0) 2014.05.30
oracle 대소문자 구분없이 검색하기  (0) 2014.05.28
oracle 타입 - nvarchar2 varchar2  (0) 2014.05.20
oracle view  (0) 2014.05.20
Posted by 구차니
sum()의 경우 대개 정수나 실수로 결과가 딱 하나 나오니
그거담을 객체를 별도로 생성하긴 귀찮으니까

int형으로 돌려받으려면 
int나 java.lang.Integer를 resultType으로 하면 된다지만..
<select id="selectCount" resultType="java.lang.Integer"
    select count(*) as cnt from tb_user where id=#{id} 
</select> 

[링크 : http://okjsp.net/seq/217267]

막상해보니 안되서 이리저리 해본결과.. -_-a
resultType 대신 resultClass로 해주면 된다.
<select id="selectSumScore" resultClass="java.lang.Integer" parameterClass="java.util.HashMap">
SELECT SUM(score) FROM MUSIC_SCORE WHERE musicId=#musicId#
</select> 

'프로그램 사용 > ibatis & mybatis' 카테고리의 다른 글

ibatis null  (0) 2014.05.29
ibatis 쿼리에 list 타입 인자로 넣기  (0) 2014.05.28
ibatis / mybatis 데이터가 비어있는 경우(null)  (0) 2014.05.23
ibatis namespace  (2) 2014.05.22
ibatis2 map  (0) 2014.05.21
Posted by 구차니