2014-10-03 4 views
0

복수 통화 데이터베이스 테이블에서 ORDER BY item.price ASC 조건으로 SELECT 조건을 수행하려면 어떻게해야합니까?복수 통화 주문 쿼리

가능한지 확실하지 않습니다.

항목 표에는 모든 유형의 통화가 많은 price, currency 속성이 있습니다.

+1

통화를 고려하는 방법을 묻습니다 (예 : 1GBP는 1 달러 이상 가치가 있습니다). – Mureinik

+0

예, 그 점은 ... –

+0

환율 테이블이 있습니까? – Mureinik

답변

2

하나의 방법은 각각의 price을 일반적인 통화로 변환 할 수있는 전환율을 가진 다른 테이블을 갖는 것입니다. 그런 다음 ORDER BY은 공통 통화를 기준으로 수행됩니다.

예를 들어 : 이것은 당신이 당신 item 테이블에서 currency를 당겨 conversion_rates에서 배를 곱하면 수 있다고 가정

currency common_conversion_rate 
    USD   1.0 
    GBP   1.4 
    ZAR   0.1 
    ... 

:

SELECT item, price as local_price, price * common_conversion_rate as comparison_price 
FROM item_table 
left join conversion_rates ON item_table.currency = conversion_rates.currency 
ORDER BY common_conversion_rate * price 

conversion_rates 테이블에는 다음 열이 포함되어 있습니다 표.

+0

하지만 전환율은 매시간 변경 될 수 있습니다 ... –

+1

출력 정확도는 환율의 정확도에 따라 달라집니다 표. 환율이 변함에 따라 출력물을 변경해야한다면 '정확한 시점'과 같은 날짜 스탬프를 입력하십시오. – Ryan