2011-04-29 6 views
2

MS SQL에서 분수 (1/5)로 일련의 숫자를 올리려고하지만 음의 기준에 적용 할 때 '도메인 오류'가 발생합니다.SQL에서 소수 자릿수로 숫자를 올림

이상한 전원 루트로 올라가고 있으므로 문제가되지 않습니다. 또한 Excel에서 계산을 수행 할 수 있습니다.

누구나 MS SQL이 분수근에 부정적인 힘을 올리는 것을 단순히 지원하지 않는다고 말할 수 있습니까?

+0

MSSQL 2000에 대한 설명서는 이것이 완전히 만족됨을 의미합니다. http://msdn.microsoft.com/en-us/library/aa276880(v=SQL.80).aspx. –

+0

정말 복잡한 숫자로 계산하려고한다는 말입니까? – pavium

+0

http://msdn.microsoft.com/en-us/library/aa276880(v=sql.80).aspx 확실하지 않습니까? 너는 무엇을 더 필요로 하는가? –

답변

1

부수적 인 힘으로 증가 된 음의 염기는 복소수가됩니다. 이는 SQL Server이 지원하지 않습니다.

당신은 정수 전원에 기저를 올릴 수

:이 때문에,

SELECT POWER(9, 1.5) 
+0

그들은 이상한 뿌리를 위해 가지 않을 텐데. -27의 입방근은 -3 –

+0

@ Martin입니다. 남은 유일한 문제는 'POWER'에 대한 인자로 정확한 '1/3'을 제공하는 것입니다. – Quassnoi

+0

@Martin : -27의 입방체 루트는 실제로 -3입니다 (실제로는 세 개의 큐브 루트 중 하나입니다). 그러나 'POWER (-27, 1/3)'는 상상의 'ROOT (-27,3)'과 다릅니다. 분수는 SQL Server에서 지원되지 않으므로 '1/3'은'0.3333333 '과 같은 부동 소수점 형식입니다. 따라서'POWER (-27, 0.3333333)'는 지원되지 않습니다. 맞습니까? –

1

내 생각 엔이 마지막 문 오른쪽입니다 :

SELECT POWER(-3, 3) 

또는 소수 전원에 기저 MySql과 Oracle의 경우. 모든 사람에게

편집

이 복잡한 숫자 결과라고 : 1/3에 번호를 제기하는 것은 너무에 상승 ... 더 복잡한 숫자를 반환하지 않는 입방 루트 같다 1/5, 1/7 ... 어느 쪽도하지 않을 것입니다.

0

기수가 음수이고 기수가 홀수 분모로 분수이면 분수의 힘으로 (-base)를 올린 다음 결과의 마이너스를 취할 수 있습니다.

즉, MS SQL은 소수 열로 음수를 올리는 것을 단지 지원하지 않습니다.

맞습니다. 추가해야합니다.

관련 문제