postgresql 최근 날짜 조회 질문 드립니다.
조회수 1230회
두개의 테이블이 있습니다.
/*article table*/
article_code / article_company / article_name / article_standard / article_unit / article_qauntity
"a004" "성심의료기기" "일회용주사기" "15cc" 1 "BOX"
"a005" "성심의료기기" "일회용주사기" "30cc" 1 "BOX"
"a006" "성심의료기기" "일회용주사기" "50cc" 1 "BOX"
"b001" "국제문화인쇄" "진료신청서" "b5" 1 "권"
"b002" "국제문화인쇄" "분만신청서" "a4" 1 "권"
"b003" "국제문화인쇄" "수술동의서" "a4" 1 "권"
"b004" "국제문화인쇄" "분만동의서" "a4" 1 "권"
"b005" "국제문화인쇄" "신생아청력검사" "-" 1 "EA"
"c001" "충남상회" "흰색 묶음 비닐" "중" 1 "EA"
"c002" "충남상회" "흰색 묶음 비닐" "대" 1 "EA"
"c003" "충남상회" "커피" "100" 1 "BOX"
"a001" "성심의료기기" "일회용주사기" "3cc" 100 "BOX"
"a002" "성심의료기기" "일회용주사기" "5cc" 100 "BOX"
"a003" "성심의료기기" "일회용주사기" "10cc" 100 "BOX"
/*articls_price*/
artilce_code / article_date / article_price
"a001" "2019-02-21" 10000
"a001" "2018-02-21" 9000
"a001" "2017-02-21" 7000
"a002" "2017-02-21" 10000
"a002" "2019-02-21" 15000
"a003" "2019-02-21" 50
"a004" "2019-02-21" 70
"a005" "2019-02-21" 80
"a002" "2019-02-22" 9999
테이블을 가장 최근날짜로 article_price
값을 반영하고 싶은데 어떻게 많이 모르겠습니다.
SELECT articles.article_code, articles.article_company, articles.article_name,
articles.article_standard, articles.article_unit, "article_quantity ",
articles_price.article_date, articles_price.article_price
from articles
inner join articles_price
on articles.article_code = articles_price.article_code
where articles_price.article_date=(
select max(articles_price.article_date)
from articles_price
group by articles.article_code
)
order by articles_price.article_price desc
join으로 동일코드을 만들고 그중에 날짜만 최신값으로 조회
#원하는 각코드별 최신날짜기준 price값
"a001" "성심의료기기" "일회용주사기" "3cc" 100 "BOX" 10000 # 2019-02-21
"a002" "성심의료기기" "일회용주사기" "5cc" 100 "BOX" 9999 # 2019-02-22
"a003" "성심의료기기" "일회용주사기" "10cc" 100 "BOX" 9999 # 2019-02-21
...
..
.
이런식으로 조회를 하고싶은데 max함수를 쓰니 a002코드만 달랑 나오네요 ㅜㅜ 조언 부탁드립니다.
그리고 가장 궁금한게 select 구절에서 "article_quantity "
부분을 "articls.article_quantity "
하면 왜 조회가 안될까요?? 또 왜 큰따옴표" "
안에 포함되어야하는지? 뒤에 공백을 줘야하는지 이해가 안가네요 데이터 타입은 character varying
입니다.
댓글 입력