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 7206 게시물 읽기
No. 7206
어려운 쿼리 문의 드립니다. 도와 주세요.
작성자
초보초보
작성일
2020-02-13 16:41
조회수
1,809

 안녕하세요... ㅜㅜ

문의 사항이 있어서요.... 미분 값을 구하는 거라고 하는데요.. 식은 아래와 같습니다.

 

no           vc              v2-v1

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

1            0.987          No4의 vc - no1의 vc

2            0.765          no5의 vc -no2의 vc

3            0.456           현재 no에 3을 더한 vc 에서 현재 no를 뺀수

4            0.345

5            0.786

6             0.983

7            0.981

8             0.786

.

.

이런식으로 v2-v1의 값을 구해야 합니다. 범위는 3을 주고 현재 vc의 no에서 3을 더한 no의 vc 값에서 현재 no의 vc 값을 뺀 수가 v2-v1이 됩니다. 

더이상 3을 더할 no가 없는 경우 모두 null로 처리 해야 합니다. no8까지 인 경우 no5 까지가 되며, 9 이 후는 null 로 처리

미분이라고 하던데 , mssql에서 함수가 없어 이런식으로 하면 된다고 하더라고요...

쿼리로 가능 할까요?

감사합니다. 

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

no 는 항상 순차적으로 연결되나요?
중간에 빈 번호가 있으면 어찌 되는지?
예를 들어 3 이 없다고 하면?
1 은 4 의 값을 참조해야 할까요? 아니면 5의 값을 참조해야 할까요?
즉, 3이라는 수치가 절대값인지? 상대값인지?

마농(manon94)님이 2020-02-13 17:00에 작성한 댓글입니다.

 마농님, 

정말 감사 드립니다. 

 

NO 는 모두 순차적이며, 빈 값은 절대 없습니다. 

일반적인 정수이며, 1~499 까지 고정된 값입니다. 

감사합니다. 

초보초보님이 2020-02-13 17:14에 작성한 댓글입니다. Edit

WITH t AS
(
SELECT 1 no, 0.987 vc
UNION ALL SELECT 2, 0.765
UNION ALL SELECT 3, 0.456
UNION ALL SELECT 4, 0.345
UNION ALL SELECT 5, 0.786
UNION ALL SELECT 6, 0.983
UNION ALL SELECT 7, 0.981
UNION ALL SELECT 8, 0.786
)
-- 1. 분석함수 LEAD
SELECT no
     , vc
     , LEAD(vc, 3) OVER(ORDER BY no) - vc x
  FROM t
;
-- 2. Outer Join, Self Join
SELECT a.no
     , a.vc
     , b.vc - a.vc x
  FROM t a
  LEFT OUTER JOIN t b
    ON a.no + 3 = b.no
;

마농(manon94)님이 2020-02-13 17:29에 작성한 댓글입니다.
이 댓글은 2020-02-13 17:34에 마지막으로 수정되었습니다.

 마농님, 

대박입니다. ^^.. 

이런 함수가 있었네요.. 이런 함수 공부 해야 겠습니다. 

정말 간단히 해결이....

정말 감사 드립니다.  즐거운 주말 보내세요.. ^^!!!!

초보초보님이 2020-02-14 08:59에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
7209한번 더 도와 주세요.. 부탁 드립니다. [2]
초보초보
2020-02-19
2050
7208근사값 찾는 쿼리 한번 더 부탁 드립니다. 죄송합니다. [2]
초보초보
2020-02-18
1960
7207근접 값 찾기... [5]
초보초보
2020-02-17
1898
7206어려운 쿼리 문의 드립니다. 도와 주세요. [4]
초보초보
2020-02-13
1809
7205unpivot 관련 문의 [4]
초보초보
2020-02-12
1741
7204rollup관련해서 도와주세요 ㅜㅜ [3]
JJ
2020-02-10
1705
7203SQL 문의 .....ㅜㅜ [2]
도와주세요ㅜㅜ
2020-02-04
1859
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다