কম্পিউটার টিউটোরিয়াল

MySQL에서 CAST로 나눗셈 정밀도 높이기 (소수점 20자리까지)

정수 나눗셈 시 정밀도를 높이려면 피제수를 CAST(컬럼 AS DECIMAL(전체자릿수, 소수자릿수))로 변환한 후 나누세요.

테이블 생성 및 데이터 삽입

mysql> CREATE TABLE DemoTable1823 (Value INT);
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO DemoTable1823 VALUES(1);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1823 VALUES(2);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1823 VALUES(3);
Query OK, 1 row affected (0.00 sec)

데이터 조회

mysql> SELECT * FROM DemoTable1823;
+-------+
| Value |
+-------+
|     1 |
|     2 |
|     3 |
+-------+
3 rows in set (0.00 sec)

DECIMAL(30,20)로 캐스팅 후 3으로 나누기

mysql> SELECT CAST(Value AS DECIMAL(30,20)) / 3 AS Result FROM DemoTable1823;
+----------------------------+
| Result                     |
+----------------------------+
| 0.333333333333333333333333 |
| 0.666666666666666666666667 |
| 1.000000000000000000000000 |
+----------------------------+
3 rows in set (0.00 sec)

해설: DECIMAL(30,20)은 전체 30자리 중 소수 20자리. 정수 나눗셈(1/3)은 정수 결과(0) 또는 기본 소수 몇 자리만 나옴. 캐스팅 후 나누면 고정소수점 연산으로 원하는 정밀도 확보. 금융 계산엔 DECIMAL 필수.

  1. Java ব্যবহার করে MySQL ডেটাবেসে ডেটা আপডেট করা

  2. Java ব্যবহার করে MySQL ডেটাবেস থেকে ডেটা ডিলিট করা

  3. PHP এবং MySQL-এ 'Boolean' মান হ্যান্ডেল করার পদ্ধতি

  4. MySQL-এ JDBC ব্যবহার করে ব্যাকস্ল্যাশ ইস্কেপ করার উপায়