CAFE

댓글

뒤로

2개의 select문 합쳐서 조회하기 도와주세요

작성자움파| 작성시간15.11.21| 조회수88| 댓글 5

댓글 리스트

  • 작성자 퇴근5분전 작성시간15.11.22 두개의 연관 관계가 전혀 없는 테이블이니 키를 하나 만드셔야 겠죠?
    select a.id, a.pw, b.id, b.pw
    from (
    select Row_Number() over( order by id ) as [no], id, pw from memeber where use = 'Y'
    ) a inner join
    (
    select Row_Number() over( order by id ) as [no], id, pw from memeber where use = 'N'
    ) b
    on a.[NO] = b.[NO]
    양쪽 갯수가 다를 경우를 대비해서 fullouter join 으로 검색해서 만들어 보세요.
  • 작성자 김형태 작성시간15.11.25 CASE 문으로 해도 되겠네요
  • 답댓글 작성자 퇴근5분전 작성시간15.11.26 case문으로 어떻게 만드는지 알수 있을까요? 좀 해보고는 있는데 쉽지 않네요?
    -- 아래 쿼리는 full outer join 으로 만든 건데요...
    ;with o
    as (
    select id, pwd, used
    from (
    values
    ( 'aa', '11', 'y'),
    ( 'bb', '22', 'n'),
    ( 'cc', '33', 'y'),
    ( 'dd', '44', 'y'),
    ( 'ee', '55', 'n')
    ) tb ( id, pwd, used)
    )

    select *
    from (

    select row_number() over( order by id ) as [no], id, pwd
    from o
    where used = 'y'
    ) a
    full outer join
    (

    select row_number() over( order by id ) as [no], id, pwd
    from o
    where used = 'n'
    ) b
    on a.[no] = b.[no]
  • 작성자 김형태 작성시간15.11.26 생각해보니 CASE는 아닌거 같네요 WITH 문이 제일 나을듯 합니다
    둘사이에 키는 필요없을듯 하여
    WITH USE_LIST AS
    (
    SELECT ID, PW
    FROM MEMBER
    WHERE USE='Y'
    ),
    NOT_USE_LIST AS
    (
    SELECT ID, PW
    FROM MEMBER
    WHERE USE='N'
    )
    SELECT U.ID, U.PW, N.ID, N.PW
    FROM USE_LIST U, NOT_USE_LIST N
  • 답댓글 작성자 퇴근5분전 작성시간15.11.26 아... 그렇군요.
    cross join 하면 뻥튀기 되는거 아닌가요? ^^;;
    답변 감사합니다. 추운데 감기 조심하시고 즐거운 하루 되세요.
맨위로

카페 검색

카페 검색어 입력폼
카카오 이모티콘
사용할 수 있는 카페앱에서
댓글을 작성하시겠습니까?
이동시 작성중인 내용은 유지되지 않습니다.