본문 바로가기

컴퓨터공학62

database table join join 의미두 개 이상의 table들에 있는 데이터를 한 번에 조회implicit join vs explicit joinimplicit join: where 절에 join condition 명시. 안 쓰는 방식explicit join: table1 JOIN table2 + ON join conditionjoin condition: 비교 연산 가능, join condition 이 true인 튜플만이 포함됨inner join vs outer joininner join: 두 테이블에서 join condition 만족하는 tuple들로 result table 만듬 left outer join좌측 테이블 기준으로 join condition에 해당하는 attribute가 true아닌 경우 우측 테이블 값들은 nu.. 2024. 5. 14.
부동소수점 방식에서 0.1*0.1 이 0.01이 아닌 이유와 해결 방법 결론부터 이야기하면 부동소수점은 근사치이며 소수를 정확히 표현할 수 없다. 부동소수점 방식을 사용할 때 0.1*0.1은 0.01이 아니다. 크롬 개발자도구 등을 열어 0.1 * 0.1 을 계산해보면 알 수 있다. 왜 이럴까?부동소수점 방식(IEEE 754)으로 저장된 십진수 0.1은 근사치를 사용하게 된다. 왜 근사치를 사용하는지, 왜 오차가 생기는지 알기 위해서는 0.1이  어떻게 표현되는지 알아야 한다. 이전 포스팅에서 자세한 내용을 설명했는데 링크를 남겨놓는다. (자세한 부동소수점 내용은 다음 글 참조: https://bako94.tistory.com/328)간단히 리마인드하자면, 부동소수점 방식에서는 소수점 오른쪽에 있는 숫자들을 2진수로 변환할때 2를 곱하는 것을 반복하여 0과 1을 뽑아내게 .. 2024. 5. 10.
부동소수점 곱셈 방법 부동소수점을 곱셈하는 방법은 간단하다.우리가 잘 알고 있는 10진수 곱셈 방식을 사용한다. 10진수 곱셈 방법을 먼저 살펴보자30 x 50 = 1500이다. 구체적인 과정은 (3x10)x(5x10) = (3x5)x(10x10) = (15)x(10^2) = 15x10^2 와 같은 방식을 따른다.2진수 곱셈 방법을 살펴보자0.25 는 0.01(2) , 4는 100(2)이다. 아래에서는 2진수의 (2)는 생략0.01 x 100 = (1.00x 2^-2) x (1x2^2) = (1.00x1)x(2^-2 x 2^2) = (1.00) x (2^0) = (1.00)x1 = 1.00 이다.10진수로 0.25 x 4 를 하여도 1이 나오는데 1은 2진수로도 1이니 잘 계산된 것을 알 수 있다.곱셈은 십진수를 계산하던 것.. 2024. 5. 9.
typescript design patern 예제 사이트 https://refactoring.guru/design-patterns/typescript Design Patterns in TypeScript Turns a request into a stand-alone object that contains all information about the request. This transformation lets you pass requests as a method arguments, delay or queue a request's execution, and support undoable operations. refactoring.guru 2021. 12. 25.