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 7011 게시물 읽기
No. 7011
두개의 쿼리를 하나로 합치기 질문 입니다.
작성자
달바라기(crimsonx)
작성일
2016-10-17 14:35ⓒ
2016-10-17 16:23ⓜ
조회수
3,422

 안녕하세요

동일한 테이블에서 다른 조건으로 값을 가져오려 합니다.

SELECT XXX AS X from A WHERE A=1 and b = 2

SELECT XXX AS Y from A WHERE A=1 and b = 3

 

X   Y

10  20

1  5

3  10

결과를 이렇게 받고 싶습니다. 

 그래서

어떻게 해야 할까요?

 

 

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

질문의 내용만으로는 두 집합간 연결고리를 알 수 없네요?
연결고리가 없다면?
3개씩 3번 연결되어 9개 행이 나오겠지요(카티션 곱)
원하는 3개행의 결과를 얻기 위한 추가 설명이 필요합니다.

마농(manon94)님이 2016-10-17 17:20에 작성한 댓글입니다.

 TABLE A

SEQ     DATE                  TIME             VALUE

1           2016-10-16          00:00:00    10.10

2           2016-10-16          01:00:00    20.20

3           2016-10-16          02:00:00    30.30

4           2016-10-16          03:00:00    40.40

5           2016-10-17          00:00:00    11.11

6           2016-10-17          01:00:00    22.22

7           2016-10-17          02:00:00    33.33

8           2016-10-17          03:00:00    44.44

테이블 A에는 위와 같은 내용이 들어 있습니다.

VALUE는 varchar입니다.

오늘 00:00:00 시간의 VALUE와 어제의 00:00:00의 VALUE값을 비교 하려고 합니다.

 

달바라기님이 2016-10-17 17:55에 작성한 댓글입니다.
이 댓글은 2016-10-17 17:57에 마지막으로 수정되었습니다. Edit

WITH t(seq, date, time, value) AS
(
          SELECT 1, '2016-10-16', '00:00:00', '10.10'
UNION ALL SELECT 2, '2016-10-16', '01:00:00', '20.20'
UNION ALL SELECT 3, '2016-10-16', '02:00:00', '30.30'
UNION ALL SELECT 4, '2016-10-16', '03:00:00', '40.40'
UNION ALL SELECT 5, '2016-10-17', '00:00:00', '11.11'
UNION ALL SELECT 6, '2016-10-17', '01:00:00', '22.22'
UNION ALL SELECT 7, '2016-10-17', '02:00:00', '33.33'
UNION ALL SELECT 8, '2016-10-17', '03:00:00', '44.44'
)
SELECT time
     , MIN(CASE date WHEN '2016-10-16' THEN value END) "2016-10-16"
     , MIN(CASE date WHEN '2016-10-17' THEN value END) "2016-10-17"
  FROM t
 WHERE date IN ('2016-10-16', '2016-10-17')
 GROUP BY time
;

마농(manon94)님이 2016-10-18 08:28에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
70142개의 select을 [4]
썬큐스트
2016-11-10
3681
7013두날짜사이 연속된 날짜를 추출할 수 있을까요?? [4]
빨간운동화
2016-11-03
4286
7012고수님들 쿼리 좀 알려주세요. [1]
선도리
2016-10-17
3420
7011두개의 쿼리를 하나로 합치기 질문 입니다. [3]
달바라기
2016-10-17
3422
7010MS-SQL ORACLE 디비링크 관련 오류 문의 [1]
김도일
2016-10-10
5593
7009mssql에서 프로시져 소스보기 질문입니다
노른자
2016-09-30
3433
7008프로시저에서 개체이름이 잘못되었다고 나옵니다. [1]
둥둥이
2016-09-22
4329
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.047초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다