
🚀 들어가며... 자바스크립트로 계산식을 수행하다 보면, 상식적으로 생각했을 땐 너무나도 당연하고 올바른 계산식인데도 불구하고 결과는 계산 오류가 발생하는 경험을 하게 됩니다. 보통 피연산자들이 소수점을 가진 경우에 발생하는데 이번 포스팅에서는 이러한 계산오류의 원인과해결방법을 정리해보았습니다. 💌 소스코드 let a = 0.42 let b = 1.41 console.log(a + b); // 1.8299999999999998 📑 내용 오류의 원인은 무엇일까요? 우선 컴퓨터는 계산시 저희가 흔히 아는 10진법으로 계산하는것이 아니라 2진법으로 계산한다는 것은 알고 계실겁니다. 몇몇 소수의 경우에는 10진법을 2진법으로 변환할 때 무한소수가 되어버리는데, 유한한 컴퓨터의 자원을 활용하는 프로그램은 당연히 ..
🚀 들어가며... Query을 작성하다보면 SubQuery를 사용하는 경우가 많습니다. 한두개 정도 사용하면 괜찮지만 그 수가 많아질 수록 가독성이 떨어지며, 재사용할 수가 없어서 매번 같은 Query를 작성해줘야 하는 불편함이 있습니다. 이 문제점을 해소하는데 도움이 되는 WITH문에 대해서 정리해보았습니다. 💌 소스코드 WITH [ 별명1 ] [ (컬럼명1 [,컬럼명2]) ] AS ( SUB QUERY )[, 별명2 AS ... ] MAIN QUERY 기본형식은 다음과 같습니다. 📑 내용 WITH문의 특징은 다음과 같습니다. 이름을 가진 SubQuery를 정의한 후 사용하는 구문입니다. Query의 전체적인 가독성을 높이고, 재사용할 수 있는 장점이 있습니다. 대부분의 DBMS에서 지원합니다. 모든 ..
🚀 들어가며... 모든 언어에 있어 가장 기본이 되는 연산자 우선순위 중 SQL의 연산자 우선순위를 정리해보았습니다. 💌 표 Level 연산자 1 ~ (비트 NOT) 2 *(곱하기), /(나누기), %(계수) 3 +(양수), -(음수), +(더하기), +(연결), -(빼기), &(비트 AND), ^(비트 전용 OR), |(비트 OR) 4 =, >, =, , !< (비교 연산자) 5 NOT 6 AND 7 ALL, ANY, BETWEEN, IN, LIKE, OR, SOME 8 =(할당) 📑 내용 실행순서는 결과값에 중대한 영향을 줄 수 있기 때문에 괄호를 사용하지 않는다면 위 표의 연산자 우선순위를 항상 숙지하여야 합니다. 레벨1이 가장 우선순위로 실행되고 레벨8이 가장 우선순위가 낮습니다. 괄호를 사용한다..
🚀 들어가며... Front에서 Back으로 파라미터나 데이터를 넘겨줄때 특정 벨류값을 JSON으로 넘겨줄때가 있는데 JSON 데이터를 처리하기 위해서 사용되는 파이썬 내장 모듈인 json에 대해 공부해보았습니다. 📑 내용 json.loads JSON 문자열을 Python 객체로 변환하는 함수 import json json_string = '''{ "id": 1, "username": "Bret", "email": "Sincere@april.biz", "address": { "street": "Kulas Light", "suite": "Apt. 556", "city": "Gwenborough", "zipcode": "92998-3874" }, "admin": false, "hobbies": null }'..
🚀 들어가며... 프로젝트를 진행하면서 항상 고민되었던 부분이 프로젝트를 클래스형으로 만들지, 함수형으로 만들지가 많이 고민되었고, 이참에 이 두 부분을 정리해 보았습니다. 💌 소스코드 customer = 0 def order(price): global customer customer += price return customer print(order(3000)) class Order: def __init__(self): self.customer = 0 def order(self, price): self.customer += price return self.customer customer1 = Order() customer2 = Order() print(customer1.order(13000)) print..
🚀 들어가며... 달력 기능 개발도중 Front에서 일수 표기 O,X를 update하려고하는 컬럼만 받아서 따로 처리하려고 하던 도중, Join과 Split에 대해 더 깊게 공부하게 되었고, 또한 set 집합자료형과 연계하여 쿼리문을 만들어 보았습니다. 💌 소스코드 def make_update_calender_query(data, data_1): update_columns = {'str_5', 'str_6', 'str_7', 'str_8', 'str_9', 'str_10', 'str_11', 'str_12', 'str_13', 'str_14', 'str_15', 'str_16', 'str_17', 'str_18', 'str_19', 'str_20', 'str_21', 'str_22', 'str_23', ..
- Total
- Today
- Yesterday
- programmers
- db
- Python
- ORM
- 탐욕법
- SQL
- union-find
- react
- list
- Greedy Algorithm
- django
- static files
- docker
- JavaScript
- uSWGI
- lv2
- JS
- MVT
- data formatting
- Algorithm
- Master & Slave
- Named export
- PostgreSQL
- generator expression
- Default export
- container
- Linux
- django ORM
- lv1
- This
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |