컬럼의 데이터 타입을선정하는 작업은 물리 모델링에서 빼놓을 수 없는 중요한 작업니다. 컬럼의 타입과 길이를 선정할 때 가장 주의해야 할 사항은 저장되는 값의 성격에 맞는 최적의 타입을 선정 가변 길이 컬럼은 최적의 길이를 지정 조인 조건으로 사용되는 컬럼은 똑같은 데이터 타입을 선정 무분별하게 컬럼의 길이가 크게 선정되면 디스크 공간은 물론 메모리나 CPU의 자원도 함께 낭비된다. 문자열(CHAR 와 VARCHAR ) 공통점은 문자열을 저장할 수 있는 데이터 타입이라는 점, 차이는 고정 길이인지 가변길이 인지 여부 고정길이는 실제 입력되는 컬럼 값의 길이에 따라 사용하는 저장 공간의 크기는 변하지 않는다. 가변길이는 최대로 저장할 수 있는 값의 길이는 제한돼 있지만, 그 이하 크기의 값이 저장되면 그 만..
GROUP BY 절의 인덱스 사용 GROUP BY 절에 명시된 컬럼의 순서가 인덱스를 구성하는 컬럼의 순서와 같으면 GROUP BY 절은 이용할 수 있다. ( 다중 컬럼 인덱스 기준 , 단일 컬럼 인덱스도 동일) GROUP BY 절에 명시된 컬럼이 인덱스 컬럼의 순서와 위치가 같다. 인덱스를 구성하는 컬럼 중에 뒤쪽에 있는 컬럼은 GROUP BY절에 명시되지 않아도 인덱스를 사용할 수 있지만 인덱스의 앞쪽에 있는 컬럼이 GROUP BY 절에 명시되지 않으면 인덱스를 사용할 수 없다. WHERE 조건절과는 달리, GROUP BY 절에 명시된 컬럼이 하나라도 인덱스에 없으면 GROUP BY절은 전혀 인덱스를 이용하지 못한다. 인덱스 사용규칙 (COL1 + COL2 + COL3 + COL4) 로 만들어진 인덱..
SQL 작성 시 인덱스를 사용할 수 있도록 쿼리 작성에 대해 설명한다. 인덱스를 사용하기 위한 기본 규칙 1. WHERE 절이나 ORDER BY 또는 GROUP BY 가 인덱스를 사용하려면 기본적으로 인덱스된 컬럼의 값 자체를 변환하지 않고 그대로 사용한다는 조건을 만족해야한다. ex) ex) 인덱스를 사용하지 못한 예 SELECT * FROM salaries WHERE salary * 10 > 150000; ---> SELECT * FROM salaries WHERE salary > 150000 / 10 ; 인덱스의 컬럼을 변형해서 비교하는 경우에는 인덱스를 이용할 수 없게 된다. 2. WHERE 절에 사용되는 비교 조건에서 연산자 양쪽의 두 비교 대상 값은 데이터 타입이 일치해야한다. CREATE T..
login-path mysql 을 command line 에서 로그인 하려면 "mysql -u 로그인명 -p DB명" 이런식으로 입력하는데, shell script 등에서 이용하라면 pw 입력때문에 pw를 노출해야하는 경우가 있다. 이럴때에 자동으로 로그인을 할 수 있도록 하는 명령 1.생성 mysql_config_editor set --login-path=[설정이름] --host=[호스트명] --user=[사용자명] --port=[포트번호] --password ex) mysql_config_editor set --login-path=jmkim_hqrds --host=localhost --user=jmkim --port=3306 --password 2. 확인 mysql_config_editor print..
- Total
- Today
- Yesterday
- pytest
- SWIFT
- WEB
- ElasticSearch
- 도커
- docker
- network
- ios
- nginx
- logstash
- 네트워크
- SQL
- spark
- linux
- BigData
- MYSQL
- 로그
- 엘라스틱서치
- python
- flask
- 리눅스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |