SQL 그룹 함수인 SUM( )과 AVG( )의 관한 포스팅입니다 아래 테이블로 설명을 진행하겠습니다 NAME CLASS SALARY 철수 A 100 영희 B 200 훈이 B 300 정훈 A 400 현우 A 400 SUM SUM( EXPR ) - EXPR의 총합을 구하는 함수입니다 SELECT SUM(SALARY) FROM TABLE - SALARY칼럼의 총합을 구해달라는 내용입니다 SUM(SALARY) 1400 하나의 행만 출력되며 모든 ROW의 SALARY 값을 더해 출력이 됩니다 SUM 함수는 그룹 함수로써 GROUB BY 절을 이용해 그룹별로 묶어 값을 출력할 수 있습니다 SELECT CLASS , SUM(SALARY) FROM TABLE GROUP BY CLASS - 클래스 별로 SALARY의 ..
이번에는 그룹 단위로 결과를 출력하기 위해 그룹 단위로 묶어주는 GROUP BY절에 대해 포스팅하겠습니다 GROUP BY GROUP BY 절은 반드시 그룹 함수( COUNT, MAX, MIN, AVG, SUM,... )들과 함께 쓰인다 GROUP BY절이 그룹 함수들의 연산에 기준이 됩니다 말이 좀 어려운데 예를 하나 들어보자면 1부터 10까지 10개의 회사마다 사원들의 총합 급여를 알고 싶은 겁니다 각 회사마다 사원들이 있고 각 회사마다 사원들의 급여를 다 더하면 각 회사의 총합 급여가 되는데 사원들의 급여를 더할 때 회사를 기준으로 묶어서 각각 더하면 되겠죠 이때 회사를 기준으로 묶어주는 것을 GROUP BY절이 해줍니다 NAME COMPANY SALARY 철수 A 500 영희 A 450 정훈 B 4..
이번엔 데이터(문자)를 대소문자로 변환하는 함수들에 대해 포스팅하겠습니다 값을 비교함에 있어서 대소문자가 다르다면 다른 값이 되기에 비교하기 전에 미리 맞춰줄 때 사용하면 좋겠죠 아래 칼럼 하나만 가지고 있는 테이블로 한번 살펴보겠습니다 COLOR Red blue GREEN LOWER() 값을 소문자로 변경하는 함수입니다 SELECT UPPER(COLOR) --> COLOR칼럼의 값들을 대문자로 바꿔 출력합니다. FROM TABLE LOWER(COLOR) red blue green 값들이 다 소문자로 바뀌어서 출력이 됩니다 UPPER() 값을 대문자로 변경하는 함수입니다 SELECT UPPER(COLOR) --> COLOR칼럼의 값들을 대문자로 바꿔 출력합니다. FROM TABLE UPPER(COLOR)..
돌아오는 요일의 날짜를 계산해주는 NEXT_DAY함수의 포스팅입니다 사용법은 NEXT_DAY(날짜, '요일' OR 숫자) [ 숫자로 기술 시 일요일은 1, 토요일은 7입니다 ] 날짜로부터 돌아오는 해당 요일에 해당하는 날짜를 계산해 출력해줍니다 NAME BIRTH_DAY 철수 1999/05/25 위 테이블에서 아래쿼리를 사용하면 SELECT NAME, BIRTH_DAY, NEXT_DAY(BIRTH_DAY, '금요일') NEXT_FRI NAME BIRTH_DAY NEXT_FRI 철수 1999/05/25 1999/05/28 1995년 5월 25일 이후 오는 금요일의 날짜인 1999년 5월 28일이 리턴됩니다
이번에 포스팅할 내용은 CASE문입니다 조건에 따라 값을 정해주는 내용으로 흔히 프로그래밍 언어에서 쓰는 IF문과 유사합니다 MS-SQL, MySql, Oracle 모두 동일하게 사용 가능한 함수입니다 먼저 사용법입니다. CASE [EXPR] WHEN COMPARISON_EXPR1 THEN RETURN_EXPR1 WHEN COMPARISON_EXPR2 THEN RETURN_EXPR2 WHEN COMPARISON_EXPR3 THEN RETURN_eXPR3 ELSE ELSE_EXPR END - COMPARISON_EXPR1 이 참일때는 RETURN_EXPR1을 반환하고 - COMPARISON_EXPR2 이 참일때는 RETURN_EXPR2를 반환하고 - COMPARISON_EXPR3 이 참일때는 RETURN_..
문자열의 길이를 출력하는 함수들에 대해 포스팅하겠습니다 MySQL의 CHAR_LENGTH 및 LENGTH함수를 설명할 예정입니다. Oracle과 MSSQL에도 같은 기능을 하되 이름만 다른 함수가 있습니다. DBMS가 다른 경우 이름만 바꿔 사용하시면 됩니다. LENGTH() MySQL - LENGTH() ORACLE - LENGTHB() MSSQL - DATALENGTH() LENGTH( 문자/칼럼 )로 사용하고 길이를 출력합니다 NAME NAME_KOREAN CHEOL SU 철수 JEONG HUN 정훈 SELECT LENGTH(NAME), LENGTH(NAME_KOREAN) FROM TABLE - NAME, NAME_KOREAN칼럼의 값들의 길이를 출력합니다 LENGTH(NAME) LENGTH(NAM..