programing

sql 서버에서 더블을 나타내는 것은 무엇입니까?

codeshow 2023. 4. 7. 21:47
반응형

sql 서버에서 더블을 나타내는 것은 무엇입니까?

에 몇 가지 자산이 있습니다.C#어느쪽인가 하면doubleSQL Server의 테이블에 저장하려고 하는데 이 테이블이 없는 것을 알 수 있습니다.double어떤 것을 사용하는 것이 가장 좋은지,decimal또는float?

위도와 경도 값을 저장하기 때문에 가장 정확한 정밀도가 필요합니다.

지금까지 답변 감사합니다.

float

구식으로 가고 싶다면:

real

float(53)도 사용할 수 있지만 float와 같은 의미입니다.

("real"은 float(24)에 해당하며 float/float(53)에 해당하지 않습니다.)

10진수(x,y) SQL Server 유형은 부동 소수점(근사값일 수 있음)이 아닌 정확한 10진수를 원하는 경우에 사용됩니다.이는 128비트 부동소수점 숫자에 가까운 C#의 10진수 데이터 타입과는 대조적입니다.

MSQL의 플로트타입은 의 64비트 더블타입과 동일합니다.NET. (2011년 답변에서는 가수에 약간의 차이가 있을 수 있다고 했습니다만, 2020년에 테스트를 실시했습니다만, 매우 작은 숫자와 매우 큰 숫자의 바이너리 표현에서는 100% 호환성이 있는 것 같습니다.테스트에 대해서는, https://dotnetfiddle.net/wLX5Ox 를 참조해 주세요).

더 혼란스러운 것은 C#의 "float"은 32비트이기 때문에 SQL에서는 float/float(53)보다 MSQL의 real/float(24) 유형과 더 동등하다는 것입니다.

특정 사용 사례에서...약 1미터의 정밀도 내에서 위도와 경도를 나타내기 위해 소수점 뒤에 5자리만 있으면 되고, 도에 대해서는 소수점 앞에 3자리까지만 있으면 됩니다.플로트(24) 또는 십진수(8,5)는 MSQL의 요구에 가장 적합하며, C#에서 플로트를 사용하면 충분하므로 이중화할 필요가 없습니다.사실, 사용자들은 아마 승차할 때 수많은 미미한 숫자들이 나오는 것보다 소수점 이하 5자리까지 반올림해 준 것에 대해 고마워할 것이다.

또한 SQL-CLR 유형 매핑에 대한 유용한 답변과 유용한 차트를 제공합니다.

(David에 의한) 그 투고부터: 여기에 이미지 설명 입력

float는 가장 가까운 값입니다.

SqlDbType 열거

OP에서 언급한 위도/긴 길이일 경우.

1미터는 위도의 4천만분의 1이고, 1초는 약 30미터입니다.플로트/더블은 유효 숫자 15개를 나타냅니다.빠르고 애매한 암산으로...반올림/근사 오차는 이 채우기 중지 -> "의 길이입니다.

FLOAT(53)에 매핑해야 합니다.이것이 LINQ to SQL의 기능입니다.

float(C#) [편집:2번

float입니다.float(53)53년

.double54번입니다.

SQL Sever의 경우:

10진수 타입은 128비트 부호수 플로트는 64비트 부호수입니다.

정답은 플로트입니다. 제가 십진법에 대해 잘못 알고 있었습니다.

그 이유는 십진법을 사용하면 십진법의 64비트를 채우지 않기 때문입니다.

int 타입을 사용하려고 해도 10진수로는 에러가 나지 않습니다.

여기 그 종류들의 좋은 참고 도표가 있습니다.

네가 골라서 고를 수 있을 것 같아.플로트를 선택하면 11자리 정밀도가 떨어질 수 있습니다.만약 그것이 받아들여질 수 있다면, 그것을 시도해 보세요.Linq 디자이너는 이것이 좋은 트레이드오프라고 생각한 것 같습니다.

다만, 이러한 추가의 숫자가 필요한 경우는, 10 진수를 사용합니다.10진수(올바르게 구현)는 플로트보다 훨씬 정확합니다.기본값 10에서 기본값 2로, 그리고 다시 기본값 2로 복잡하게 변환되는 일은 없습니다.

A FloatdoubleSQL Server の sql sql sql sql sql 。비주얼 스튜디오에서 C#의 코딩을 통해 증거를 찾을 수 있습니다.했습니다.OvertimeFloatSQL Server 에 C # 。 해서 저는 환산할 수 .

int diff=4;
attendance.OverTime = Convert.ToDouble(diff);

서 ★★★★OverTimefloat type

언급URL : https://stackoverflow.com/questions/1209181/what-represents-a-double-in-sql-server

반응형