태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

No bean named 'egovFileIdGnrService' is defined..

분류없음 2013.08.30 14:04

 

Eclipse  maven Project 에서 서버 등록, 실행시 하기와 같은 에러메시지가 나온다면.

     Error creating bean with name 'xxxxxxxx': 

     ..

     No bean named 'xxxxxxxxxxx' is defined 

 

프로젝트 설정 파일들이 제대로 배포가 안되어서 발생한 오류다.

설정 파일들이 제위치에 배포되도록 되어 있는지 확인하고 없으면 추가해준다.

 


1. 프로젝트 > Properties > Deployment Assembly  을 선택

2. 아래 항목이 없으면 추가

     Source              |     Deploy Path

    /src/main/java                 WEB-INF/classes

    /src/main/resource          WEB-INF/classes      <- 이녀석이 누락되어서 발생한 경우..

    /src/main/webapp           / 

    Maven Dependencies       WEB-INF/lib


출처 : http://eknote.tistory.com/1820

블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

maven 설정

pom.xml 설정

-------------

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>
            <version>1.9.7</version>
        </dependency>          
       
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.9.7</version>
        </dependency>        

------------

전자정부 프레임웍의 dispatcher-serlvet.xml 설정

dispatcher-serlvet.xml 위치는 설정하기 나름이지만 전자정부프레임웍에서는 WEB-INF/config/egovframework/springmvc/dispatcher-serlvet.xml 있다

----------

<bean id="jacksonMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"/>

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  

       <property name="messageConverters">
            <list>
                <ref bean="jacksonMessageConverter"/>
            </list>
        </property>
 </bean>

<bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" p:prefixJson="false"/>

------------

org.springframework.web.servlet.view.json.MappingJacksonJsonView 설정시 order는 설정하면 에러 발생한다. 왜 발생하는지는 공부좀 해야 할것 같고 일단은 없으면 안난다.

다른곳에 참고할때는 web.xml도 action 에 대해 json 설정을 하라고 되어 있지만 확장자를 *.json으로 사용하지 않으므로 설정할 필요는 없다.


java 에서는 @ResponseBody 어노테이션을 사용하여 리턴처리를 한다.

-------------------

@Controller

public class UserInfoController {

Logger logger = Logger.getLogger(this.getClass());

.......

    @RequestMapping("/userInfo/selectMemberJq.do")
    public @ResponseBody UserInfoVO selectMemberJq(@ModelAttribute("userInfoVO") UserInfoVO  

         userInfoVO) throws Exception{
        UserInfoVO resultVO = new UserInfoVO();
        resultVO = userInfoService.selectUserInfoData(userInfoVO);
        return resultVO;
    }

}

--------------------

UserInfoVO 형태의 json을 리터하게 된다 [userId=aa15,userEmail=aa15@aa.aa, ....]

jsp 부분에서는 별다는 처리하지 않는다. jquery를 쓰던 Ajax를 쓰던 처리를 하면된다.

모 외국 사이트를 찾던중 @ResponseBody만 사용하면 되는것 처럼 예제를 써 놓았지만 실제로는 일부 내용이 빠진것 같다. 아니면 내가 잘 몰라서 그럴수도 있음....

블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.


아놔.

poi로 엑셀을 읽어들이는데 숫자포맷으로 되어있어서 지수로 표시되었다....



6061600042650 -> 6.06160004265E12 


텍스트로 올라왔어야 하는데. 숫자포맷을 문자로 변경되는 법을 찾다가... 엄청 나게 쉬운..


셀타입을 String으로 변경한후에 읽어버리면 숫자포맷이 없어져서 문자열로 읽을수가 있었다.




    switch(obj.getCellType()) {

    case Cell.CELL_TYPE_STRING

    return obj.getStringCellValue();

    

    case Cell.CELL_TYPE_NUMERIC:

    obj.setCellType(Cell.CELL_TYPE_STRING);

    //return String.valueOf((obj.getNumericCellValue()));

    return obj.getStringCellValue();

    

    case Cell.CELL_TYPE_BLANK:

    return "";

    

    case Cell.CELL_TYPE_BOOLEAN:

    return String.valueOf((obj.getBooleanCellValue()));

    default

    return "";

    }



'프로그래밍 > java' 카테고리의 다른 글

poi cell Number 포맷 문자로 읽기  (0) 2016.11.04
에러코드 정리  (0) 2016.05.25
스프링 DI  (0) 2016.03.29
에자일 방법론  (0) 2016.03.29
java.lang.UnsupportedClassVersionError  (0) 2016.03.28
java 윤년, 평년 구분하기  (0) 2016.01.18
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

<meta http-equiv="X-UA-Compatible" content="IE=5" />

<meta http-equiv="X-UA-Compatible" content="IE=6" />

<meta http-equiv="X-UA-Compatible" content="IE=7" />

<meta http-equiv="X-UA-Compatible" content="IE=8" />

<meta http-equiv="X-UA-Compatible" content="IE=9" />

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

'프로그래밍 > 웹표준' 카테고리의 다른 글

IE호환성 모드 설정  (0) 2016.10.19
jquery input type='file' 초기화 처리  (0) 2016.07.12
홈페이지 생성시 웹 폰트 사용하기  (0) 2015.11.24
다음 사진 올리는 방법  (0) 2015.08.12
html5 기본구조  (0) 2013.08.09
html form 전송 시 character set 설정  (0) 2013.06.17
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

var v_btnFileDel = $("#btnFileDel");     // 추가처리..


v_btnFileDel.click(function(event){

    var v_addfile = $("[id^='addfile']");

    var v_addFileCnt = v_addfile.length;

    if(v_addFileCnt > 1){

        // alert(v_FileCnt+"::"+v_addFileCnt);

        $("#addfile"+v_addFileCnt).remove();

    }else if(v_addFileCnt == 1){

        if (/msie/.test(navigator.userAgent.toLowerCase())) {

            // ie 일때 input[type=file] init.

            $("#addfile"+v_addFileCnt).replaceWith($("#addfile"+v_addFileCnt).clone(true) );

        } else {

            // other browser 일때 input[type=file] init.

            $("#addfile"+v_addFileCnt).val("");

        }

    }

    event.preventDefault();

});

'프로그래밍 > 웹표준' 카테고리의 다른 글

IE호환성 모드 설정  (0) 2016.10.19
jquery input type='file' 초기화 처리  (0) 2016.07.12
홈페이지 생성시 웹 폰트 사용하기  (0) 2015.11.24
다음 사진 올리는 방법  (0) 2015.08.12
html5 기본구조  (0) 2013.08.09
html form 전송 시 character set 설정  (0) 2013.06.17
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

1. eclipse>Window>Preferences



2. General > Workspace 로 들어간다.

1) Refresh using native hooks or polling을 체크한다.

2) Refresh on access를 체크한다. 



'프로그래밍 > eclipse' 카테고리의 다른 글

eclipse 이미지 업로드 시 자동 새로고침  (0) 2016.05.31
web.xml error page 처리  (0) 2016.05.25
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

 JSP에서 에러(Exception)이 발생하면 에러 코드와 함께 에러 페이지를 보여준다.


- 이때 에러 페이지가 아닌 다른 페이지를 보여주자.


- JSP 에는 에러 페이지를 처리하는 방법으로 <%@page errorPage ="error.jsp"%>, <%@page isErrorPage="true" %> 가 있다.


 page 디렉티브 <%@ page %>


- 하지만 JSP 2.0 또는 최신 웹 컨테이너들은 이 기능을 처리하지 못할 수 있다.


- 그렇기 때문에 에러 페이지 처리를 서블릿에서 처리하기 위해 web.xml 에서 처리하는 방법을 사용한다.


<error-page>

<error-code>404</error-code>

<location>/error/404code.jsp</location>

</error-page>


- 위와 같이 web.xml에 기술되어 있으면 404 에러 발생시 404code.jsp 페이지로 이동한다. 이때 요청 페이지는 사용자가 요청한 페이지를 그대로 유지한다.


- 에러페이지인 404code.jsp 를 처리하기 위해서는 404code.jsp 에 아래와 같은 처리가 필요하다.


<%

response.setStatus(HttpServletResponse.SC_OK);

%>


- 이것은 현재 페이지가 정상적으로 응답되는 페이지임을 지정하는 코드다. 이 코드를 생략하면 웹 브라우저는 자체적인 에러 페이지를 표시한다.


- 각 주요 에러코드별로 처리할 에러 페이지를 지정하며, 기술하지 않은 그 외의 에러에 대해서도 처리할 수 있다.





- web.xml 에러 페이지 처리 예


<?xml version="1.0" encoding="utf-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

    

    <display-name>TEST</display-name>

    

    <!-- 시작 페이지 -->

    <welcome-file-list>

        <welcome-file>/index.jsp</welcome-file>

    </welcome-file-list>

    

    <!-- error 페이지 -->

    <error-page>

     <error-code>400</error-code>

     <location>/WEB-INF/jsp/common/error/400error.jsp</location>

    </error-page>

    <error-page>

     <error-code>404</error-code>

     <location>/WEB-INF/jsp/common/error/404error.jsp</location>

    </error-page>

    <error-page>

     <error-code>403</error-code>

     <location>/WEB-INF/jsp/common/error/403error.jsp</location>

    </error-page>

    <error-page>

     <error-code>500</error-code>

     <location>/WEB-INF/jsp/common/error/500error.jsp</location>

    </error-page>

    <error-page>

     <exception-type>java.lang.Throwable</exception-type>

     <location>/WEB-INF/jsp/common/error/error.jsp</location>

    </error-page>

</web-app>


출처 : http://hyeonstorage.tistory.com/

'프로그래밍 > eclipse' 카테고리의 다른 글

eclipse 이미지 업로드 시 자동 새로고침  (0) 2016.05.31
web.xml error page 처리  (0) 2016.05.25
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

 HTTP 

에러코드

 에러 메시지 

100

 Continue 

101 

 Switching Protocols

200

 OK, 에러 없이 전송 성공 

202 

 Accepted, 서버가 클라이언트의 명령을 받음 

203 

 Non-authoritative Information, 서버가 클라이언트 요구 중 일부만 전송함 

204 

 Non Content, 클라이언트 요구를 처리했으나 전송할 데이터가 없음 

205 

 Reset Content 

206 

 Partial Content 

300 

 Multiple Choices, 최근에 옮겨진 데이터를 요청함. 

301 

 Moved Permanently, 요구한 데이터를 변경된 임시 URL에서 찾음 

302 

 Moved Permanently, 요구한 데이터가 변경된 URL에 있음 

303 

 See Other, 요구한 데이터를 변경하지 않았기 때문에 문제가 있음 

304 

 Not modified 

305 

 Use Proxy 

400 

 Bad Request, 요청 실패 - 문법상 오류가 있어서 서버가 요청 사항을 이해하지 못함. 

401.1 

 Unauthorized, 권한 없음 - 접속 실패, 이 에러는 서버에 로그온 하려는 요청 사항이 서버에 들어있는 권한과 비교했을 시 맞지 않을 경우 발생. 이 경우, 요청한 자원에 접근할 수 있는 권한을 부여받기 위해서 서버 운영자에게 요청해야 함. 

401.2 

 Unauthorized, 권한 없음 - 서버 설정으로 인한 접속 실패, 이 에러는 서버에 로그온 하려는 요청사항이 서버에 들어있는 권한과 비교했을 때 맞지 않을 경우 발생. 이것은 일반적으로 적절한 www-authenticate head field를 전송하지 않아서 발생함. 

402.3 

 Unauthorized, 권한 없음 - 자원에 대한 ACL에 기인한 권한 없음. 이 에러는 클라이언트가 특정 자원에 접근할 수 없을 때 발생. 이 자원은 페이지가 될 수도 있고, 클라이언트의 주소 입력란에 명기된 파일일 수도 있다. 또한, 클라이언트가 해당 주소로 접속할 때 이용되는 

또 다른 파일일 수도 있다. 접근할 전체 주소를 다시 확인해 보고 웹 서버 운영자에게 여러분이 자원에 접근할 권한이 있는지를 확인한다. 

401.4 

 Unauthorized, 권한 없음 - 필터에 의한 권한 부여 실패. 이 에러는 웹 서버가 서버에 접속하는 사용자들을 확인하기 위해 설치한 필터 프로그램이 있음을 의미함. 서버에 접속하는데 이용되는 인증 과정이 이런 필터 프로그램에 의해 거부된 것임 

404.5 

 Unauthorized, 권한 없음 - ISA PI/CGI 어플리케이션에 의한 권한 부여 실패. 이 에러는 이용하려는 웹 서버의 어드레스에 ISA PI나 CGI 프로그램이 설치되어 있어 사용자의 권한을 검증함. 서버에 접속하는데 이용되는 인증 과정이 이 프로그램에 의해 거부됨. 

402 

 Payment Required, 예약됨 

403.1 

 Forbidden, 금지 - 수행 접근 금지. 이 에러는 CGI나 ISA-PI, 혹은 수행시키지 못하도록 되어 있는 디렉터리 내의 실행 파일을 수행시키려고 했을 때 발생함. 

403.2

 Forbidden, 금지 - 읽기 접근 금지. 이 에러는 브라우저가 접근한 디렉터리에 가용한 디폴트 페이지가 없을 경우에 발생함. 

403.4 

 Forbidden, 금지 - SSL 필요. 이 에러는 접근하려는 페이지가 SSL로 보안 유지되고 있는 것일 때 발생.

403.5 

 Forbidden, 금지 - SSL 128이 필요. 이 에러는 접근하려는 페이지가 SSL로 보안 유지되고 있는 것일 때 발생. 브라우저가 128비트의 SSL을 지원하는지를 확인해야 함. 

403.6 

 Forbidden, 금지 - IP 주소 거부됨. 이 에러는 서버가 사이트에 접근이 허용되지 않은 IP주소로 사용자가 접근하려 했을 때 발생함. 

403.7 

 Forbidden, 금지 - 클라이언트 확인 필요. 이 에러는 접근하려는 자원이 서버가 인식하기 위해서 브라우저에게 클라이언트 SSL을 요청하는 경우 발생함. 자원을 이용할 수 있는 사용자임을 입증하는데 사용됨. 

403.8 

 Forbidden, 금지 - 사이트 접근 거부. 이 에러는 웹 서버가 요청사항을 수행하고 있지 않거나, 해당 사이트에 접근하는 것을 허락하지 않았을 경우에 발생함. 

403.9 

 Forbidden, 금지 - 연결된 사용자수 과다. 이 에러는 웹 서버가 busy한 상태에 있어서 요청을 수행할 수 없을 경우에 발생함. 

403.10 

 Forbidden, 금지 - 설정이 확실하지 않음. 이 에러는 웹 서버의 설정 부분에 문제가 있을 경우 발생함. 

403.11 

 Forbidden, 금지 - 패스워드 변경. 이 에러는 사용자 인증 단계에서 잘못된 패스워드를 입력했을 경우 발생함. 

403.12 

 Forbidden, 금지 - Mapper 접근 금지. 이 에러는 클라이언트 인증용 맵(map)이 해당 웹 사이트에  접근하는 것을 거부할 경우에 발생. 

404 

 Not Found, 문서를 찾을 수 없음 - 이 에러는 클라이언트가 요청한 문서를 찾지 못한 경우에 발생함. URL을 다시 잘 보고 주소가 올바로 입력되었는지를 확인함. 

405 

 Method not allowed, 메소드 허용 안 됨 - 이 에러는 Request 라인에 명시된 메소드를 수행하기 위한 해당 자원의 이용이 허용되지 않았을 경우에 발생함.

406 

 Not Acceptable, 받아들일 수 없음 - 이 에러는 요청 사항에 필요한 자원은 요청 사항으로 전달된 Accept header에 따라 "Not Acceptable" 내용을 가진 사항이 있을 경우에 발생함. 

407 

 Proxy Authentication Required, Proxy 인증이 필요함 - 이 에러는 해당 요청이 수행되도록 proxy 서버에게 인증을 받아야 할 경우에 발생함.

408 

 Request timeout, 요청 시간이 지남 

409 

 Conflict 

410 

 Gone, 영구적으로 사용할 수 없음. 

411 

 Length Required 

412 

 Precondition Failed, 선결조건 실패 - 이 에러는 Request-header filed에 하나 이상에 선결 조건에 대한 값이 서버에서의 테스트 결과 false로 나왔을 경우에 발생 

413 

 Request entity too large 

414 

 Request-URI too long, 요청한 URI가 너무 김 - 이 에러는 요청한 URI의 길이가 너무 길어서 서버가 요청 사항의 이행을 거부했을 경우 발생

415 

 Unsupported media type 

500 

 Internal Server Error, 서버 내부 오류 - 이 에러는 웹 서버가 요청사항을 수행할 수 없을 경우에 발생함 

501 

 Not Implemented, 적용 안 됨 - 이 에러는 웹 서버가 요청사항을 수행하는데 필요한 기능을 지원하지 않는 경우에 발생 

502 

 Bad gateway, 게이트웨이 상태 나쁨 - 이 에러는 게이트웨이 상태가 나쁘거나 서버의 과부하 상태일 때 발생한다. 

503 

 Service Unavailable, 서비스 불가능 - 이 에러는 서비스가 현재 멈춘 상태 또는 현재 일시적인 과부하 또는 관리 상황일 때 발생될 수 있다. 

504 

 Gateway timeout 

505 

 HTTP Version Not Supported 


출처 : http://hyeonstorage.tistory.com/

'프로그래밍 > java' 카테고리의 다른 글

poi cell Number 포맷 문자로 읽기  (0) 2016.11.04
에러코드 정리  (0) 2016.05.25
스프링 DI  (0) 2016.03.29
에자일 방법론  (0) 2016.03.29
java.lang.UnsupportedClassVersionError  (0) 2016.03.28
java 윤년, 평년 구분하기  (0) 2016.01.18
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.


원문 : http://bbangjem2.tistory.com/112


스프링 프레임 워크를 사용했고 데이터 가지고 와서 보내 줄때 다음과 같이 설정도 했고 다른데이터도 제대로 받고

1
2
3
response.setHeader("Content-Type", "application/xml");
response.setContentType("text/xml;charset=UTF-8");
response.setCharacterEncoding("utf-8");
java 파일도 jsp 파일도 js 파일에서도 전부 utf - 8 로 설정 했는데...... 한글만 유독 ???? 로 깨져서 나왔음 톰캣 설정에 URIEncoding ="utf-8" 도 붙여 봤고 그래도 안되서 계속 검색 검색 web.xml 에서 필터 부분이 기존
1
2
3
4
5
6
7
8
9
10
11
12
13
<filter>
     <filter-name>encodingFilter</filter-name>
     <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
      <init-param>
         <param-name>encoding</param-name>
         <param-value>UTF-8</param-value>
      </init-param>
</filter>
   
<filter-mapping>
     <filter-name>encodingFilter</filter-name>
     <url-pattern>/*</url-pattern>
</filter-mapping>
여기서
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<filter>
     <filter-name>encodingFilter</filter-name>
     <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
      <init-param>
         <param-name>encoding</param-name>
         <param-value>UTF-8</param-value>
      </init-param>
      <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
</filter>
   
<filter-mapping>
     <filter-name>encodingFilter</filter-name>
     <url-pattern>/*</url-pattern>
</filter-mapping>
이렇게 변경 했더니 해결 ~~~ 추가한 부분은
1
2
3
4
<init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
</init-param>
이부분 입니다.


블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.

-- 분석 함수

    -- RANK OVER()

    -- ROW_NUMBER() OVER() ** 중요  제일 많은 씀 **

      -- 순위를 구함. 

      -- RANK() OVER()는 동일 순위인 경우 1,1,3, 형식으로 출력하지만

      -- ROW_NUMBER() OVER()는 동일 순위인 경우 1,2,3, 형식으로 출력

      -- DENSE_RANK() OVER()는 동일 순위인 경우 1,1,2 형식으로 출력

      -- ROW_NUMBER() OVER()는 매우매우매우 중요한 함수이므로 반드시 알아 둘것 !!!!!!!!!!!!!!!!!!!!!!!

      

      --기본급 내림차순으로 순위를 구하기

      SELECT name, basicpay, RANK() OVER(ORDER BY basicpay DESC) 순위 FROM insa; -- 비교데이타가 똑같으면 순위를 건너뜀

      

      SELECT name, basicpay, ROW_NUMBER() OVER(ORDER BY basicpay DESC) 순위 FROM insa; -- 비교데이타가 똑같아도 순위를 차례대로 매김

      

      -- 기본급 내림차순으로 순위. 단, 기본급이 같으면 수당 내림차순.

      SELECT name, basicpay, sudang, RANK() OVER(ORDER BY basicpay DESC, sudang DESC) 순위 FROM insa;

      

       SELECT name, basicpay, sudang, ROW_NUMBER() OVER(ORDER BY basicpay DESC, sudang DESC) 순위 FROM insa;

      

      -- 부서별 기본급의 내림차순 순위 구하기

      SELECT name, basicpay, buseo, 

        RANK() OVER(PARTITION BY buseo ORDER BY basicpay DESC, sudang DESC) 순위 

        FROM insa;

      

      SELECT name, basicpay, buseo, 

        ROW_NUMBER() OVER(PARTITION BY buseo ORDER BY basicpay DESC, sudang DESC) 순위 

        FROM insa;

      

      -- 출신도별 부서별 순위(학년의 반별)

      SELECT name, basicpay, city, buseo, 

        RANK() OVER(PARTITION BY city ORDER BY basicpay DESC, sudang DESC) 순위 

        FROM insa;

        

      -- 여자 인원수가 가장 많은 부서는?

      SELECT buseo, COUNT(*) FROM insa

        WHERE SUBSTR(ssn,8,1) IN (2,4,6)

        GROUP BY buseo;

        

      SELECT buseo FROM(

      SELECT buseo, COUNT(*) cnt, RANK() OVER(ORDER BY COUNT(*) DESC) 순위

        FROM insa WHERE SUBSTR(ssn,8,1) IN (2,4,6) GROUP BY buseo

        ) WHERE 순위 =1;

        

      -- 기본급여 많이 받는 1~10등 까지 출력(name, basicpay)

      SELECT name, basicpay,RANK() OVER(ORDER BY basicpay DESC) 순위 FROM(

      SELECT name, basicpay, RANK() OVER(ORDER BY basicpay DESC) 순위 FROM insa 

      ) WHERE 순위 <=10;

      

      -- 기본급 상위 10% 출력(name, basicpay)

       SELECT name, basicpay FROM(

        SELECT name, basicpay, RANK() OVER(ORDER BY basicpay DESC) 순위 FROM insa 

        )WHERE 순위<=TRUNC((SELECT COUNT(*) FROM insa) *0.1);

      

      -- 기본급 하위 10% 출력(

      SELECT name, basicpay FROM(

        SELECT name, basicpay, RANK() OVER(ORDER BY basicpay) 순위 FROM insa 

        )WHERE 순위<=TRUNC((SELECT COUNT(*) FROM insa) *0.1);

      

      -- 부서별 기본급여 가장 높은 사람들 출력( name, buseo, jikwi)

      SELECT name, buseo,basicpay, RANK() OVER(PARTITION BY buseo ORDER BY basicpay DESC) 순위

      FROM insa; -- 일단 부서별 순위를 매기는 쿼리

      

      SELECT name, buseo,basicpay FROM(

        SELECT name, buseo,basicpay,

        RANK() OVER(PARTITION BY buseo ORDER BY basicpay DESC) 순위 

        FROM insa

        ) WHERE 순위=1;

        

    -- ***** 나중에 게시판 작성 할 때 사용하는 쿼리 형식이므로 반드 암기 해야함. *****

    -- ROW_NUMBER()를 이용한 쿼리가 아래 ROWNUM을 사용한 쿼리보다 우수

      SELECT num,name,basicpay FROM(

        SELECT num, name, basicpay, ROW_NUMBER() OVER(ORDER BY num DESC) rnum FROM insa

        ) WHERE rnum>= 10 AND rnum <=15 ORDER BY num DESC;

        

     SELECT num,name,basicpay FROM(

      SELECT ROWNUM rnum, num, name, basicpay FROM(

        SELECT num, name, basicpay FROM insa ORDER BY num DESC

      )

    )WHERE rnum>=10 AND rnum<=15;


출처 : http://tibang.tistory.com/

'프로그래밍 > Oracle' 카테고리의 다른 글

오라클 분석함수  (0) 2016.05.04
oracle hr 사용자 unlock  (0) 2016.01.25
ORACLE PLS-553 오류 처리  (0) 2015.04.29
오라클 백업  (0) 2015.04.24
오라클 테이블 정보 보기  (0) 2015.04.23
SQLPLUS 출력 컬럼 수 조정하기  (0) 2014.07.31
블로그 이미지

구본숭 하늘을사랑한사람

진실된 사람으로 태어 나기 위한 조건들, 사랑하기 위해 필요한 것을 찾습니다.