2010-06-29 4 views
1

3 개의 필드, productname, cost 및 costnotax가있는 기본 테이블, 제품이 있다고 가정 해보십시오.동일한 테이블의 다른 필드에서 테이블의 숫자를 계산하는 방법은 무엇입니까?

비용 필드에서 백분율을 빼서 비용 필드를 자동으로 채울 수 있습니까?

+2

이렇게하려면 트리거, 계산 열 또는 업데이트 문에 대한 정보를 묻는 중입니까? ? – NotMe

+0

또는 계산 열이있는 뷰? –

+0

업데이트가 아니라 원래 삽입하는 동안 새 레코드를 삽입하는 동안 의미합니다. – Jacob

답변

0

예 - 원가 당신이 한 경우 무슨 계산과 같이 간단하게 뭔가 말하자면, 6 %의 세금이 붙었습니다.

UPDATE mytable SET costnotax=cost/1.06 

그러나 기억에 작은 점이 있습니다. 각 새로운 또는 업데이트 된 기록을 위해 그것을 할 필요가 있다면 당신은 그냥 쉽게

SELECT cost, cost/1.06 AS costnotax FROM mytable; 
+0

비용을 1.06으로 나누는 이유는 무엇입니까? 그러면 12 %를 빼는 것과 어떻게 다릅니 까? 아마도 ... 분명히 알 수는 없지만 ... – Jacob

+0

기본 가격에 12 %를 더하고 싶다면 1.12를 곱하면됩니다. 그래서, 그 작업을 되돌리고 과세 가격에서 기본 가격을 얻으려면, 1.12 –

+0

yup..thanks로 다시 나눕니다. – Jacob

0

예.

여기에 세금이 원래 가격의 25 % 인 두 가지 예가 나와 있습니다. 이것은 전체 테이블입니다 :

UPDATE table SET costnotax = cost/1.25; 

그리고 이것은 특정 행입니다 :

UPDATE table SET costnotax = cost/1.25 WHERE productname = 'Piglet with cream'; 
0

를 선택 할 수있을 때, 그것을 보내고 것은 그것은 BEFORE INSERT/UPDATE 트리거해야합니다. 테이블의 모든/특정 레코드에 대해 한 번만 필요하면 UPDATE ...을 사용하십시오. 필요한 모든 항목이 비용 비공개임을 표시하면 전혀 열이 아니어도됩니다. SELECT cost/1.25 as costnotax FROM ...

관련 문제