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
운영게시판
최근게시물
MS-SQL Q&A 1089 게시물 읽기
No. 1089
상황에 따른 다른 값 구하기.
작성자
정명자
작성일
2003-12-09 15:58ⓒ
2003-12-09 16:05ⓜ
조회수
4,731


--고객의 연체일수---
SELECT DATEDIFF(day, nrs.lendDay, GetDate()-setting.oldLendTerm)'delayDay'
FROM
      tblSetting
AS setting
INNER JOIN
       -- 고객의 미반납테잎들
        (SELECT t.buyDate,lr.code,lr.customerCode,lr.tapeCode,lr.settingCode,lr.lendDay,lr.restoreDay
        FROM tblTape AS t 
        INNER JOIN tblLendRestore AS lr ON t.code = lr.tapeCode AND restoreDay = '19000101 00:00:00' AND customerCode=2/*고객코드*/)
AS nrs
ON  setting.code = nrs.settingCode 
       AND
       (
              /*구프로연체*/((nrs.lendDay-nrs.buyDate)>setting.newOldTerm AND (GetDate()-nrs.lendDay)>setting.oldLendTerm)
              OR
              /*신프로연체*/((nrs.lendDay-nrs.buyDate)<setting.newOldTerm AND (GetDate()-nrs.lendDay)>setting.newLendTerm)
       )
--------------------------

 

제가 구하고 싶은것은 분홍색의 날짜 차이입니다.

저쿼리가 잘 돌아가긴 하는데요..

문제는 구프로 일때와 신프로일때의 날짜 차이가 유동적으로 일어나야 한다는 거에요.

구프로 일때는 setting.oldLendTerm 을 빼줘야하고,

신프로 일때는 setting.newLendTerm 을 빼줘야 합니다.

어떻게 하면 될까요?

글고 제가 한 쿼리문으로는 그렇게 못할까여?

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

case 문을 사용하시면 됩니다.

 

USE pubs
GO
SELECT    'Price Category' =
      CASE
         WHEN price IS NULL THEN 'Not yet priced'
         WHEN price < 10 THEN 'Very Reasonable Title'
         WHEN price >= 10 and price < 20 THEN 'Coffee Table Title'
         ELSE 'Expensive book!'
      END,
   CAST(title AS varchar(20)) AS 'Shortened Title'
FROM titles
ORDER BY price
GO

가을남자님이 2003-12-16 19:32에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1092asp질문인지 SQL질문인지 모르겠지만, 인증에 관한 질문 [1]
최명지
2003-12-11
4360
1091smalldate 타입에서 특정 시간 이후의 데이터 조회 [1]
guest
2003-12-10
5281
1090날짜 값을 불러오는데요. 정렬이 안되네요 [1]
정이라네
2003-12-10
5157
1089상황에 따른 다른 값 구하기. [1]
정명자
2003-12-09
4731
1085테이블에서 400행씩 select해서 insert할려면 어떻게 해야하죠? [1]
지형준
2003-12-08
5102
1084DB가 있는 현재의 Time을 얻어오려면? [1]
궁금이
2003-12-08
4499
1083도와주세요.ㅜㅜ (집계결과 쿼리문) [2]
정명자
2003-12-08
4549
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다