전체 글 236

GROUP BY, ORDER BY 인덱스 튜닝

GROUP BY 인덱스 태우기 GROUP BY 절에 명시된 칼럼이 인덱스 칼럼의 순서와 위치가 같아야 한다. 인덱스를 구성하는 칼럼 중에서 뒷쪽에 있는 칼럼은 GROUP BY 절에 명시되지 않아도 인덱스를 사용할 수 있지만 인덱스의 앞쪽에 있는 칼럼이 GROUP BY 절에 명시되지 않으면 인덱스를 사용할 수 없다. GROUP BY 절에 명시된 칼럼이 하나라도 인덱스에 없으면 GROUP BY 절은 전혀 인덱스를 사용하지 못한다. 예시 인덱스 칼럼 순서 : col1, col2, col3, col4 WHERE 조건은 없다 ... GROUP BY col1 # 사용 가능 ... GROUP BY col1, col2 # 사용 가능 ... GROUP BY col1, col2, col3 # 사용 가능 ... GROUP ..

연결재무제표와 별도재무제표

연결재무제표 작성 대상은 어디까지를 포함할까? 기본적으로 지분을 50% + 1주이상(과반수) 보유하면 지배력이 있다고 판단한다. 때에 따라서는 지분율이 50% 이하이더라도 지배력이 있다고 보는 경우(예를 들어 40%를 보유하고 있으나 나머지 주식은 수천명에게 분산되어 1%가 안되는 경우)도 있고, 과반수를 보유하더라도 지배력이 없다고 보는 경우(따로 정부나 국가기관의 지배를 받는 회사)도 있다. 연결대상인 종속기업의 현황은 감사보고서 주석에 기재되어 있다. 2011년 IFRS가 도입되면서 생겨난 가장 큰 변화 중 하나는 회사가 공시하는 기본 재무제표가 별도재무제표에서 연결재무제표로 바뀌었다는 점이다. 연결재무제표가 만들어지는 원리 연결재무제표를 만드는 방법은 2가지가 가능하다. 우선 두 기업이 있고, A..

MySQL sql_mode 설정과 옵션

sql_mode 옵션은 SQL의 작성과 결과에 영향을 미치는 옵션이다. 설정보는 법 show variables like 'sql_mode' 설정하는 법 my.cnf (unix 기준) 파일에 sql_mode="XXXXX,YYYY"와 같이 적어줄 수 있다. [mysqld] sql_mode="NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"Dynamic 옵션이기 때문에 실행 중에도 넣어줄 수 있다. Global, Session 둘다 존재하는 옵션이다. SET sql_mode = 'TRADITIONAL'; 옵션과 의미 STRICT_ALL_TABLES : 일반적으로 MySQL에서는 저장하려는 값의 길이가 칼럼의 길이보다 더 긴 경우라 하더라도 에러가 발생하..

(이제는) 삼일씨엔에스 분석 (2020년 8월 24일)

2020년 8월 7일 ~ 9일에 분석한 글을 이제 올립니다. (때문에 다른 분석글들과 format이 다를 수 있습니다) 현재와 약간씩 차이가 있을 수 있지만, 큰 방향에서 봐주시면 감사드리겠습니다 :) BM PHC 파일 → Pretensioned spun High strength Concrete Pile 건축물 및 플랜트 하부에서 하중을 견딜 수 있도록 하는 기초 건자재 (내진설계 시 반드시 필요한 자재) 아파트, 초고층 건축물, 플랜트 설비 등 다양한 기초 공사에 사용된다. 시장의 특성 : 콘크리트 파일은 사용처 별로 아파트, 주택 및 일반 건축물이 가장 높은 비중을 차지하고 있으나, 최근에는 플랜트, 토목, SOC 등의 비중이 증가하고 있습니다. → 토목과 건설 산업의 정부 스탠스 중요 19년도 파일..

주식투자를 위한 건축산업 이해 #1 건축 전반적인 과정

(건축의 '건'자도 모르는 주린이가 공부하며 작성한 산업 이해 글입니다 ^^) 건축산업의 특징 결과물이 필요한 곳에 자원 (재료 / 인력)이 가서 작업을 수행하게 된다. 때문에 현장에서 이루어지는 예측하기 어려운 상황이 존재하고 (ex 콘크리트 치고 있는데 비가 온다) 품질관리의 어려움이 있다. 건축 공사의 순서 프로젝트의 특성에 따라 다르다 (케바케) 지하층 유무 적용되는 공법 마감공사 아래는 그래도 대략적인 순서이다. 1. 착공준비 지반조사, 측량 모래, 바위 등등의 깊이를 파악하고 어디까지 공사 할 수 있는 지면이다 등등 확인 2. 가설공사 방음벽 설치 3. 흙막이 및 토공사 4. 기초공사 건물 자체의 무게가 있는데, 무게를 땅에 전달할 수 있는 부분 (굉장히 중요. 모든 부분의 기초가 됨) 그냥 ..

내맘대로 정리하는 Real MySQL #10장) 파티션

시리즈는, 책을 읽으며 몰랐던 내용을위주로 정리한 내용 그대로 포스팅하는 시리즈입니다 ^^ 원문의 문맥이 궁금하면 (좋은 책이니) 이 참에 하나 장만하는 것은 어떤가요?? 파티션이란 MySQL 서버 입장에서는 데이터를 별도의 테이블로 분리해서 저장하지만 사용자 입장에서는 여전히 하나의 테이블로 읽기와 쓰기를 할 수 있게 해주는 솔루션이다. 일반적으로 DBMS의 파티션은 하나의 서버에서 테이블을 분산하는 것이며, 원격 서버 간에 분산을 지원하는 것은 아니다. 파티션을 사용하는 이유 한 테이블이 너무 커서 인덱스의 크기가 물리적인 메모리보다 훨씬 크거나, 데이터 특성상 주기적인 삭제 작업이 필요한 경우 등이 파티션이 필요한 대표적인 예이다. 단일 INSERT와 단일 또는 범위 SELECT의 빠른 처리 레코드..

Java InputStream이란?

InputStream OutputStream을 실무에서 사용할 때면, 뭔가 알긴 알고 실제로 둘을 활용해 기능을 구현하는데는 전혀 문제가 없지만, 사용할때마다 찾아보게되고 뭔가 정확히 아는 것 같지는 않다라는 느낌적인 느낌이 있는 친구들이다. 그래서 이번 기회에 화끈하게 InputStream, OutputStream을 파보려고 한다. InputStream의 정의 JDK 11 기준 InputStream의 설명을 읽어보면 This abstract class is the superclass of all classes representing an input stream of bytes 라고 되어 있다. 중요한 부분은 "representing an input stream of bytes"이다. 하나씩 살펴보자. ..

내맘대로 정리하는 Real MySQL #6장) 실행계획 - MySQL 쿼리 동작 방식 편

시리즈는, 책을 읽으며 몰랐던 내용을위주로 정리한 내용 그대로 포스팅하는 시리즈입니다 ^^ 원문의 문맥이 궁금하면 (좋은 책이니) 이 참에 하나 장만하는 것은 어떤가요?? '풀 테이블 스캔'을 제외한 나머지는 모두 스토리지 엔진이 아니라 MySQL 엔진에서 처리되는 내용이다. 또한 MySQL 엔진에서 부가적으로 처리하는 작업은 대부분 성능에 미치는 영향력이 큰데, 안타깝께도 모두 쿼리의 성능을 저하시키는 데 한몫하는 작업이다. 스토리지 엔진에서 읽은 레코드를 MySQL 엔진이 아무런 가공 작업도 하지 않고 사용자에게 반환한다면 최상의 성능을 보장하는 쿼리가 되겠지만, 우리가 필요로 하는 대부분의 쿼리는 그렇지 않다. MySQL 엔진에서 처리하는데 시간이 오래 걸리는 작업의 원리를 알아둔다면 쿼리를 튜닝하..

씨에스베어링 분석 (2020년 8월 19일)

시총은 분석하는 내내 계속 바껴서 (분석하는데 2~3일 정도 소요됩니다) 현재와 조금 차이가 있을 수 있습니다! 회사 정보 회사에 대한 기본적인 정보 : 시총, 주식수, 주주 구성 등등 시총 : 1811억 (18900원 기준) 주식수 : 9,580,400 / 19년 11월 15일에 상장 최대주주인 씨에스윈드는 국내에 상장되어 있는 글로벌 풍력발전기 타워 제조사이다. BM 풍력 발전기 베어링 → 피치 베어링, 요 베어링 풍력 발전기 구조 (타워 아래도 지반 공사가 들어가야 할 텐데 공부가 덜 됨 ㅎ..) 블레이드 : 바람에너지 → 기계 에너지로 변환하는 장치. 바람개비의 날개 허브 : 너셀과 블레이드의 연결 부분, 피치 베어링 3개가 들어가게 된다. 너셀 : 수평축 풍력발전기에서 발전기가 받는 바람을 조정..

캡티브 마켓

캡티브 마켓이란? 원래 정의는 '소비자가 특정 제품을 구매할 때 자신이 선택할 수 있는 공급자의 수가 매우 제한돼 정해진 소수의 공급업자에게서 구입하거나 아니면 구입을 포기해야 하는 시장'을 의미한다고 한다. 캡티브 마켓이 존재한다는 것은 특정 시장에서 독점이나 과점이 형성돼 있다는 의미로 받아들여진다. 한국에서는 주로 계열사 간 내부 시장을 뜻하는 말로도 사용된다.