mysql 쿼리문 정렬 질문입니다.
본문
제가 짠 DB가 아니라서 그런지 몰라도.. 복잡한 쿼리문을 작성을 해야하는데 몰라서 글을 써봅니다.
총 3개의 테이블을 가져와야 하는 상황이고요.
A = 는 로그인/로그아웃을 체크하는 테이블입니다.
B = 는 주문 내용이 들어가있는 테이블 입니다.
C = 는 배송 내용이 들어가있는 테이블입니다.
A와 B와 C는 각각 컬럼 개수도 다르고, 공통된 사항도 거의 없습니다. (같이 묶여있는게 없습니다)
다만 A와 B와 C 모두 등록일이 담겨있는 컬럼이 존재하고, 이 등록된 날짜 순으로 정렬을 해야하는 상황이고요.
그래서 정리를 하면..
A에 2개 / B에 5개 / C에 13개가 있다면..
총 20개가 나열이 되야하고.. (3개의 총합)
20개가 나열이 되면서 각각의 날짜 컬럼들을 순서대로 정렬을 해야하는 상황입니다.
ex)
A - 2016년 5월 17일 / 2016년 5월 18일
B - 2016년 6월 1일 / 2016년 6월 2일 / 2016년 6월 3일 / 2016년 6월 4일 / 2016년 6월 5일
C - 2016년 7월 1일 ~~ 2016년 7월 13일
이런식으로 되있다면..
2016년 7월 13일
2016년 7월 12일
.
.
.
.
.
2016년 5월 17일
이런 순으로 나와야하고... 나머지 컬럼들도 모두 나왔으면 좋겠습니다. (해당 칼럼에 없는 부분은 NULL 처리)
도와주세요 ㅠㅠ
답변 3
SELECT *
FROM `g510_shop_order` a , g5_member b, g510_shop_cart c
WHERE
a.mb_id=b.mb_id and b.mb_id=c.mb_id and a.od_id=c.od_id
아이디 mb_id
배송코드 od_id
먼가이상하다느 우선
1 로그인 로그아웃체크하는 테이블 회원아이디가 필드가 없는 게 말도안됨
2 주문내용에 회원아이디 안들어가는 말도안됨
3배송내용이 들어가있는데 회원 아이디가 없다는게 이상함
그리고 원하는 것이 공통된느 키가 있어야 되는 건데 키없이 한다는 거도이상함
없으면 만드세요
그리고 조인이나 그런것들로 해바야 속도도느리고 여러가지 에러도생김
그러므로 만드삼