전체 글112 CSS Tools: Reset CSS HTML 태그에는 우리가 따로 설정해주지 않아도 default로 설정되어 있는 값들이 있습니다. 그 중 대표적인게 여기 나타난 margin. div뿐만이 아니라 h1, p등에도 붙어있습니다. HTML 초창기에 문서제작을 쉽게하기위해 default 값을 적절하게 설정했지만 스타일 기술이 향상된 요즘에는 오히려 걸리적거리기 일쑤입니다. 지워버립시다. CSS Tools: Reset CSS The goal of a reset stylesheet is to reduce browser inconsistencies in things like default line heights, margins and font sizes of headings, and so on. The general reasoning behind t.. 2022. 12. 29. 테이블 Random 액세스 최소화 튜닝 방법 1. 인덱스 컬럼 추가 SELECT /*+ index(emp emp_x01) */ * FROM emp WHERE depno = 30 AND sal >= 2000 emp 테이블에 현재 PK 이외에 [depno + job] 순으로 구성된 emp_x01 인덱스 하나만 있는 상태다. 테이블 액세스가 발생하게 된다. 인덱스 구성을 [depno + sal] 순으로 바꿔주면 좋겠지만 실 운영 환경에서는 인덱스 구성을 함부로 바꾸기가 쉽지 않다. 인덱스를 새로 만들어야겠지만 인덱스를 추가해 나가다 보면 테이블마다 인덱스가 수십 개씩 달려 배보다 배꼽이 더 커지게 된다. 인덱스 관리 비용이 증가함은 물론 DML 부하에 따른 트랜잭션 성능 저하가 생길 수 있음을 예상할 수 있다. 이럴 때 기존 인덱스에 sal 컬럼을 추가.. 2022. 12. 25. MAX() 함수의 성능 개선 -2 1. 사전구성 SELECT CASE WHEN a.number < 10 THEN '가' ELSE '나' END AS A , ROW_NUMBER() OVER(ORDER BY a.number) AS B INTO TB_TOP FROM master..spt_values a JOIN master..spt_values b ON a.type = 'P' AND a.number 2022. 12. 19. COUNT 함수의 OVER 절 성능 이슈 - 2 1. 사전구성 CREATE TABLE TB_Std02 ( std_no INT NOT NULL , class_cd VARCHAR(2) NOT NULL , code NVARCHAR(36) NOT NULL , CONSTRAINT PK_Std02 PRIMARY KEY NONCLUSTERED (std_no) ); CREATE TABLE TB_Point02 ( std_no INT NOT NULL , sbjt_cd VARCHAR(2) NOT NULL , point INT NOT NULL ); INSERT INTO TB_Std02 SELECT std_no , CASE WHEN std_no 2022. 12. 15. COUNT 함수의 OVER 절 성능 이슈 - 1 1. 사전구성 SELECT NEWID() AS code , CAST(rownum%12 AS INT) AS value INTO TB_OVER FROM ( SELECT ROW_NUMBER() OVER (ORDER BY a.number) AS rownum , a.number FROM master..spt_values a JOIN master..spt_values b ON a.type = 'P' AND b.type = 'P' AND a.number 2022. 12. 14. 변수 사용에 따른 카디널리티 추정 이슈 1. 사전구성 SELECT CASE WHEN seq = 1 THEN 1 WHEN seq 2022. 12. 12. 변수 테이블의 통계 개선 - 1 1. 사전구성 SELECT ROW_NUMBER() OVER (ORDER BY a.number) seq , NEWID() main_code INTO TB_Main01 FROM master..spt_values a , (SELECT number FROM master..spt_values WHERE type = 'P' AND number < 10) b WHERE a.type = 'P' AND a.number BETWEEN 1 AND 1000; SELECT c.sub_code , ASCII(SUBSTRING(sub_code, 1, 1)) * c.number value INTO TB_Sub01 FROM ( SELECT b.number, CONVERT(NVARCHAR(36), main_code) sub_code F.. 2022. 12. 8. RxJS 기본 개념 정리 Observable We need to subscribe to an Observable to run its logic. When we subscribe a few tiems to the same Observable: The logic of the Observable will be run independetly for each new Subscription. What happens each time you subscribe to an Observable? The Observable's logic is executed. The provided Observer is wrapped into a Subscriber object and passed to the Observable's logic. Wen we hav.. 2022. 12. 7. EXCEPT 구문 성능 이슈 1. 사전구성 SELECT number custid , NEWID() code , CASE WHEN number 2022. 12. 7. 스칼라 서브 쿼리 성능 이슈 1. 사전구성 SELECT rownum AS seq , NEWID() AS sub_code , DATEADD(ss, rownum, '2020-01-01 00:00:00.000') AS date INTO TB_Sub05 FROM (SELECT ROW_NUMBER() OVER (ORDER BY a.number) AS rownum , a.number FROM master..spt_values a JOIN master..spt_values b ON a.type = 'P' AND b.type = 'P' AND a.number 2022. 12. 1. 이전 1 2 3 4 5 ··· 12 다음