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
운영게시판
최근게시물
Sybase Q&A 2427 게시물 읽기
No. 2427
CASE 문 질문입니다
작성자
나그네
작성일
2009-03-03 15:17
조회수
9,387

질문이 있어 올립니다.

<방법1>
SELECT CASE WHEN 컬럼04 >= 95 THEN 'S'
                      WHEN 컬럼04 >= 80 THEN 'G'
                      WHEN 컬럼04 >= 70 THEN 'E'
                      ELSE 'D' END A  
FROM   INST1.TTMABF998

<방법2>
SELECT CASE 컬럼04 WHEN >= 95 THEN 'S'
                                WHEN >= 80 THEN 'G'
                                WHEN >= 70 THEN 'E'
                                ELSE 'D' END A
FROM   INST1.TTMABF998


<방법2>는 오류 납니다.

컬럼04 가 단순히 컬럼이 아니라 로직이 들어 있는 (긴)부분이라면 
<방법1> 처럼 여러번 쓰기가 번거롭잖아요?       지저분도해지고...

그래서 <방법2> 처럼 한번만 쓰고 싶은데 다른 방법이 없을까요?

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

방법2는 하나의 값밖에 지정이 안되는듯 합니다...지저분해도 방법1을 사용해야될듯...

나그네님이 2009-03-03 16:50에 작성한 댓글입니다. Edit

없을듯 합니다.

dd님이 2009-03-03 17:11에 작성한 댓글입니다. Edit

그렇군요.
답변주신분들께 감사드립니다

나그네님이 2009-03-04 13:46에 작성한 댓글입니다. Edit

방법1) 
case when 일대는 조건(>< <>...) 조건일때 사용가능.
방법2)
case 컬럼 when 은 값을 나타 낼때 사용.

case 를 쓰지 않고 점수테이블을 만드시고 그 점수 테이블과 조인 하셔도 될것 같네여.

서브쿼리를 이용하는 방법으로요...

지나가다가님이 2009-03-09 10:03에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
2430bcp in 그리고 중단 rollback [2]
권환희
2009-03-05
8289
2429Sybase에 오라클의 Materialized View와 같은것이 있나요? [2]
너무몰라서..
2009-03-04
7719
2428인덱스 크기는 어느정도가 좋을까요? [1]
karerina
2009-03-04
8260
2427CASE 문 질문입니다 [4]
나그네
2009-03-03
9387
2426한글 구분을 잘 못 해요 -.- [1]
숑숑
2009-03-03
8088
2425어느 경우가 성능에 더 효율적일까요? [3]
karerina
2009-03-02
8012
2424아..log scan 봐도 모르겠어요.. [1]
karerina
2009-03-02
7872
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다