채택완료

두개의 쿼리문을 하나로

2022-10-18 (화) 18:35:42 1,541

A쿼리 SELECT * FROM test ORDER BY wr_datetime DESC;

B쿼리 SELECT * FROM test WHERE id = 'b' AND wr_1 = '' 

위 두개의 쿼리를 하나로 합치고 싶습니다. (뭐라고 표현할지 몰라 합치고싶다함)

보고싶은 결과값이

B 쿼리에서 나온 결과값 중에서 mb_id = 'b' AND wr_1 = '' 조건에 해당하는 값을 맨위로 순서를 바꾸고 싶은겁니다.

예를들면

A쿼리 결과값이 아래와 같고

id  wr_1   wr_datetime

a    1      2022-10-18

b    1      2022-10-17

b           2022-10-16

a    1      2022-10-15

c    1      2022-10-14

B쿼리 결과값이 아래와 같으면

id  wr_1   wr_datetime

b           2022-10-16

아래처럼 결과값을 보이고 싶습니다.

id  wr_1   wr_datetime

b           2022-10-16

a    1      2022-10-18

b    1      2022-10-17

a    1      2022-10-15

c    1      2022-10-14

* 두개의 쿼리문을 합친다는건 제 생각이고... (union을 써봤지만 제 머리론 해결 못했습니다.)

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2022-10-18 (화) 18:43:06
Copy
select test.*,

        case when mb_id = 'b' and wr_1 = '' then 1 else 2 end as ord1

  from test 

 order by ord1 asc, wr_datetime desc;

답변에 대한 댓글 1개

2022-10-18 (화) 19:41:38
너무 감사합니다.

답변을 작성하려면 로그인이 필요합니다.