전체글 236

Java OutputStream이란?

InputStream 링크 : lannstark.tistory.com/34 Java InputStream이란? InputStream OutputStream을 실무에서 사용할 때면, 뭔가 알긴 알고 실제로 둘을 활용해 기능을 구현하는데는 전혀 문제가 없지만, 사용할때마다 찾아보게되고 뭔가 정확히 아는 것 같지는 않다라는 느 lannstark.tistory.com OutputStream의 정의 OutputStream 추상 클래스는 데이터가 나가는 통로의 역할에 관해 규정하고 있는 추상 클래스이다. InputStream을 한 번 봤기 때문에 쉽게 이해할 수 있다.. 반대되는 개념이겠거니... OutputStream 주요 메소드 그럼 이제 데이터가 나가는 통로는 어떤 역할을 수행해야 하는지 주요 메소드를 알아보..

내맘대로 정리하는 Real MySQL #7장) 쿼리 작성 및 최적화

시리즈는, 책을 읽으며 몰랐던 내용을위주로 정리한 내용 그대로 포스팅하는 시리즈입니다 ^^ 원문의 문맥이 궁금하면 (좋은 책이니) 이 참에 하나 장만하는 것은 어떤가요?? 이번 장에서는 쿼리의 각 패턴별로 "어떻게 처리되는가?"를 살펴보겠다. 또한 많이 알려져 있지 않지만 프로그램 코드를 상당히 줄일 수 있는 유용한 쿼리 패턴도 함께 살펴보겠다. 내맘대로 정리하고 싶었으나, 페이지 수가 무려 180p인 크고 아름다운 Chapter라서 필요하다면 세부 주제별로 잘개 쪼개 정리해보았다. (앗 생각해보니 어차피 내맘대로구나..!) 쿼리와 연관된 시스템 설정 lannstark.tistory.com/38 MySQL sql_mode 설정과 옵션 sql_mode 옵션은 SQL의 작성과 결과에 영향을 미치는 옵션이다...

MySQL DDL 총 모음

업무를 진행하면서 간혹 DDL을 써야 할 때가 있는데, 그때마다 구글 검색을 하는 것이 여간 번거로운 일이 아니다. 때문에 아싸리 총 정리를 해서 여기만 보려고 한다. 혹시 저처럼 구글 검색이 귀찮으신 분이 계시다면 이 페이지 즐겨찾기 추천드립니다 ^^,, 빠진 DDL이 있다면 댓글로 알려주세요! 추가하겠습니다 :) DB의 구조 및 정의를 생성하거나 변경하는 쿼리를 DDL이라 한다. 데이터 베이스 DB 생성 CREATE DATABASE [IF NOT EXISTS] employees; CREATE DATABASE [IF NOT EXISTS] employees CHARACTER SET utf8; CREATE DATABASE [IF NOT EXISTS] employees CHARACTER SET utf8 CO..

레미콘 업계 (2020 08 30)

레미콘이란? 정의와 이해, 사용처 레미콘 트럭.. REMICON이란 Ready Mixed Concrete의 약자로 시멘트, 골재(자갈, 모래), 혼화제, 물 등의 재료를 사용하여 KS F 4009에 따르는 제조법과 품지 검사 등에 따라 Fresh Concrete 생산 공장에서 제조 후, 주행중 콘크리트의 교반이 가능한 트럭 믹서 또는 에지테이터 트럭을 이용해 굳지 않은 상태로 공사현장까지 운반되는 콘크리트를 말한다. 레미콘은 건축 공사에 사용되기 때문에 (건축업의 이해 I 참고) 전방산업인 건축업과 밀접한 관련이 있다. 특징 지역형 산업 제품 생산 후 레미콘 트럭은 90분, 덤프트럭은 60분 이내에 도달해야 하기 때문에 지역형 산업 특성을 강하게 가진다. 주문이 들어왔을대 생산하고 공급하는 주문형 산업 ..

MySQL 교집합과 차집합

MySQL에서는 INTERSECT와 MINUS 연산을 지원하지 않는다. 어떻게 하면 다른 쿼리를 같은 효과를 낼 수 있는지 알아보자..! INTERSECT SELECT emp_no FROM dept_emp WHERE dept_no = 'd001' INTERSECT SELECT emp_no FROM dept_emp WHERE dept_no = 'd002'; INNER JOIN을 사용할 수 있다. SELECT de1.emp_no FROM dept_emp de1 INNER JOIN dept_emp de2 ON de2.emp_no = de1.emp_no AND de2.dept_no = 'd001' WHERE de1.dept_no = 'd002'; MINU..

PHC 파일 업계 (2020 08 28)

PHC란? Pretensioned spun High strength Concrete Piles라는 뜻으로, 쉽게 말해서 '콘크리트 파일' (말뚝) 이다.. 콘크리트 파일이란 건축물 및 플랜트의 하부에 위치해, 하중을 견딜 수 있도록 하는 기초 건자재이다. 지반이 단단할 경우 상관없으나 연약지반의 경우 건물의 하중 때문에 콘크리트 파일을 설치해 건물을 지탱해 줄 필요가 있다. 또한, 초고층 건축물의 경우에도 건물이 그만큼 무겁기 때문에 콘크리트 파일 시공이 필요하다. 업계 히스토리 15년도, 16년도에 가장 활황이었고, 17년도부터 업황이 확 꺾였다. 19년도, 20년도까지 수요는 계속 줄어드는 중 19년도 파일 수요 : 592만톤 20년도 상반기 파일 수요 : 288.5만톤 언제 수요가 늘어날까? 수요가..

서브쿼리 튜닝

서브쿼리 전반 서브쿼리의 종류 서브쿼리는 두 가지 종류가 있다. 상관서브쿼리 : 서브 쿼리가 독립적으로 실행되지 못하고 외부 쿼리 결과를 기다려야 하는 경우 독립서브쿼리 : 서브 쿼리가 독립적으로 실행될 수 있는 경우.. 하지만 MySQL에서는 독립 서브쿼리라 하더라도 효율적으로 처리되지 못할 때가 많다. 서브쿼리의 제약 사항 서브 쿼리를 IN 연산자와 함께 사용할 때에는 효율적으로 처리되지 못한다. IN 연산자 안에서 사용되는 서브 쿼리에는 ORDER BY와 LIMIT을 동시에 사용할 수 없다. 서브쿼리가 사용되는 곳 SELECT 절에 사용된 서브쿼리 SELECT 절에 사용된 서브쿼리는 내부적으로 임시 테이블을 만든다거나 쿼리를 비효율적으로 실행하도록 만들지는 않기 때문에 서브 쿼리가 적절한 인덱스를 ..

NH 나무 개별 종목 신용보는법

안녕하세요! 공부하는 개발자입니다 ㅎㅎ 저는 주식 거래를 NH 투자증권의 나무 MTS를 쓰는데요! (홍보아닙니다... 초창기에 평생 수수료 무료이벤트 하던데가 NH랑 삼성? 그 정도만 있었어요 ㅋㅋㅋㅋ) 나무에서 개별 종목에 대한 신용을 어떻게 볼 수 있는지 간단히 알아보겠습니다! 1. 기업 선택, 눌러주세요! 2. 네, 그럼 아래와 같은 화면이 나오는데요.. 여기서 일별 눌러주세요 ㅎㅎ 3. 그다음으로 신용을 누르면..! 4. 끝입니다! 참 쉽죠? ㅎㅎㅎ 그렇다면 개별 기업 기준으로 몇 % 신용이 있어야 신용이 많아 주의가 필요한 종목일까요?? 뇌피셜로 계산을 한 번 해봤는데요... 요즘 신용잔고가 사상 최대 규모로 15~16조원 정도 된다고 합니다. 코스피/코스닥 시총의 총 합은 대략 1850 ~ 1..

우양 2020 반기보고서 점검 (2020 08 15)

점검한지 조금 된 글입니다. 감안해서 봐주셨으면 좋겠습니다 :) 숫자 손익 매출액 : 326.3억 (QoQ -8.3%) → 매출이 줄어든 이유 : 핫도그/고로케 계절적 비수기 영향 (판가가 꺾임) 영업이익 : 19.26억 당기순이익 : 12.85억 (QoQ -19.2%) 부채와 이자 이번분기에 부채비율이 늘었다. 때문에 현재 부채수준을 살펴보도록 하자. 부채수준과 이자 한 분기마다 이자 비용이 대략적으로 5억정도 나가는 중 (전환상환우선주 제외) 단기차입금 230억 사채 6억 장기차입금 181억 주석 차입금 항목에 언급된 것으로는 총 420억 정도가 빚을 지고 있음 재무제표에 나와 있는 단기차입금 + 장기차입금은 490억 규모 (이 외에 리스부채 등도 감안하면 1분기에 5억 정도 나가는 이자가 우선 납득..

JOIN 쿼리 튜닝

조인과 인덱스 레인지 스캔 조인이 들어간 쿼리 튜닝을 하기 전에, 인덱스 레인지 스캔으로 레코드를 읽는 작업을 다시 한 번 생각해 보아야 한다. 인덱스에서 조건을 만족하는 값이 저장된 위치를 찾는다. 이 과정을 인덱스 탐색이라고 한다. 1번에서 탐색된 위치부터 필요한 만큼 인덱스를 쭉~ 읽는다. 이 과정을 인덱스 스캔이라 한다. 2번에서 읽어들인 인덱스 키와 레코드 주소를 이용해 레코드가 저장된 페이지를 가져오고, 최종 레코드를 읽어온다. 일반적으로 인덱스 풀 스캔이나 테이블 풀 스캔 작업은 인덱스 탐색 과정이 거의 없지만 실제 인덱스나 테이블의 모든 레코드를 읽기 때문에 부하가 높다. 하지만 인덱스 레인지 스캔 작업에서는 가져오는 레코드의 건수가 소량이기 때문에 인덱스 스캔 과정은 부하가 작지만 특정 ..