데이터분석/SQL

1) 문자열 함수 함수 동작 LOWER(문자열), UPPER(문자열) 문자열을 전부 소문자, 대문자로 변경 ANSCII(문자) 문자를 ASCII코드로 변경 CHR(ASCII값) or CHAR(ASCII값) ASCII값에 해당하는 문자로 변결 CONCAT(문자열1, 문자열2) 문자열1과 문자열2를 연결 LEN(문자열) / LENGTH(문자열) 문자열의 갯수를 return SUBSTR(문자열, m[, n]) / SUBSTRING(문자열, m[, n]) 문자열의 m번째글자부터 n번째 글자까지 return. n 생략시 끝가지 2) NULL 함수 함수 동작 NVL(표현식1, 표현식2) / ISNULL(표현식1, 표현식2) 표현식1이 NULL이면 표현식2를 출력 NULLIF(표현식1, 표현식2) 표현식1== 표현식..
1) DELETE ROLLBACK정보를 기억, COMMIT이전 ROLLBACK가능 데이터만 삭제됨 테이블 용량이 줄지 않음 작업속도 느림 일부만 삭제 가능 2) DROP ROLLBACK 불가 테이블 자체를 삭제 저장공간 초기화 3) TRUNCATE ROLLBACK 불가 테이블을 최초 생성된 초기 상태로 만듬 일부 삭제 불가(무조건 전체 삭제) 용량 줄어듬(초기 상태 용량만 사용) 인덱스도 함께 삭제됨 4) 정리 작업속도 ROLLBACK 가능여부 저장공간 삭제유무 테이블 정의 DELETE slow O 유지 남음 DROP fast X 삭제 남음 TRUNCATE fast X 삭제(초기상태 남음) 삭제
1) Index 검색기능을 최적화하기 위해 사용 빠른 검색을 위해 사용 2) Index 생성 CREATE [UNIQUE] INDEX 인덱스명 ON 테이블명(col1[, col2,...]); UNIQUE: 중복제외(unique index) key col에 중복데이터가 없음 성능이 가장 좋음 중복값을 저장할 가능성이 있는 col엔 사용금지 3)Index적용 구분하기 INDEX 사용 권장 INDEX 사용 권장하지 않음 테이블에 데이터가 많음 테이블에 데이터가 적음 컬럼값의 범위가 넓음 테이블에 DML작업이 잦음 WHERE or JOIN에 사용되는 컬럼 WHERE에 잘 사용하지 않는 컬럼 검색 결과가 전체 데이터의 2~4% 검색 결과가 전체 데이터의 10~ 15% 이상 NULL이 포함된 행이 많음 INDEX 컬..
1) View 테이블 혹은 다른 VIEW기반의 논리 테이블 실제 데이터를 저장하지 않으나 유저는 테이블처럼 사용 가능 Base table: View의 기반이 되는 테이블 선택적 데이터 출력이 가능함 (접근제한) 결과 검색을 위한 복잡한 질의를 단순화 2) View 생성 CREATE [OR REPLACE] VIEW 뷰이름 [alias] AS (Subquery) [WITH CHECK OPTION [CONSTRAINT 제약조건명]] [WITH READ ONLY [CONSTRAINT 제약조건명]]; Subquery에 복잡한 SQL문을 저장해둠 이후 view를 table처럼 사용가능 -> 복잡한 질의 단순화 -> 원하는 데이터만 출력 (접근제한) OR REPLACE: 기존의 view를 수정할 때 사용. 동명의 v..
wacku
'데이터분석/SQL' 카테고리의 글 목록