본문 바로가기
728x90

SQL15

[MySQL] 그룹 함수 다루기 Sample Data : Products SQL Statement Site : https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all 그룹 함수 테이블의 전체 행을 하나 이상의 컬럼을 기준으로 컬럼값에 따라 그룹화하여 그룹별로 결과를 출력하는 함수 복수행 함수라고 불리며 아래와 같이 여러 가지 종류의 함수가 있음. 그룹 함수 규칙 반드시 하나의 값만을 반환한다. NULL 값은 무시된다. NULL 값이 무시되지 않으려면 NVL, NVL2와 같은 함수를 이용한다. GROUP BY 설정 없이 일반 컬럼과 기술될 수 없다. 그룹 함수의 종류 함수 이름 의 미 COUNT 입력되는 데이터들의 건수를 출력 SUM 입력되는 데이터들의 합계값을 출력 AV.. 2021. 6. 22.
[MySQL] SQL 변수 생성 및 활용 데이터베이스 (DB)는 데이터가 쌓이는 창고로, 이를 활용하는 SQL 쿼리에서 변수 생성은 그렇게 자주 사용하지는 않습니다. 하지만, 원하는 테이블을 생성하기 위해서 여러 가지 변수를 만들어 사용하는 경우가 있기에 MySQL의 변수 종류와 활용법을 정리해보았습니다. MySQL 변수 종류 1. 사용자 정의 변수 - 정의 사용자가 직접 정의하여 사용하는 변수로 정수, 10진수, 부동 소수점, 2진수 또는 이진문자열 또는 NULL 값과 같은 제한된 데이터 유형 세트에서 값을 지정할 수 있다. 그리고 변수는 세션(Session)단위로 실행이 되기 때문에, 한 클라이언트에서 정의한 사용자 변수는 다른 클라이언트에서 보거나 사용할 수 없다. - 사용 예시 ## 연산자 차이 # SET @변수는 '=', ':=' SE.. 2021. 6. 11.
[MySQL] 중복 데이터 찾기 및 제거 MySQL로 중복 데이터 처리하기 데이터 예시 - SQL Fiddle에서 데이터 확인 id first_name last_name email 1 Carine Schmitt carine.schmitt@verizon.net 2 Jean King jean.king@me.com 3 Peter Ferguson peter.ferguson@google.com 4 Janine Labrune janine.labrune@aol.com ˙˙˙ ˙˙˙ ˙˙˙ ˙˙˙ ※ 출처 : MySQLTutorial 중복 데이터 확인 (중복 행) ▶ 쿼리 실행 SELECT first_name, last_name, email, COUNT(*) as cnt FROM contacts GROUP BY email, first_name, last_na.. 2021. 5. 30.
[MySQL] 생년월일 데이터 다루기 > 연령대별 변수 생성 안녕하세요. 오늘은 생년월일이 포함된 데이터 테이블에서 MySQL을 활용하여 연령대로 구분하는 쿼리를 소개하고자 포스팅하게 되었습니다. 생년월일 등 날짜 데이터는 우리가 흔히 만날 수 있는 데이터 타입으로 보는 사람의 입맛에 맞게 잘 다룰 줄 알아야 합니다. 또한, 집단별로 원하는 변수를 추출, 생성하는 query는 sql의 기본 중에 기본이므로 잘 알아둬야 하므로 샘플 데이터와 문제를 만들어보았습니다. ※ 간단한 SQL 쿼리 예시를 보여드리기 위해 자주 애용하는 SQL Test site를 사용했습니다. SQL Test Site : http://sqlfiddle.com ▶ Sample Data * 해당 Sample Data는 제가 임의로 만든 값이므로 큰 의미가 없습니다. Table : emp # 데이터.. 2021. 5. 24.
[Programmers] SQL > JOIN > 있었는데요 없었습니다 문제. SQL JOIN > 있었는데요 없었습니다 문제 설명 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE.. 2021. 4. 14.
[MySQL] 그룹별 누적 합계 구하기 SQL 쿼리를 활용하여 DB에 있는 데이터를 추출하다보면, 그룹별로 누적 합계를 계산해야 할 때가 있습니다. 최근, SQL 관련 업무를 진행하다 앞서 말한 상황이 발생해서 문제를 해결하기 위해 여러 사이트를 참고하여 포스팅을 해보겠습니다. ※ Oracle은 PARTITION BY / ROW_NUMBER OVER() 등 함수를 통하여 이러한 기능을 쉽게 구현할 수 있습니다. 하지만, 낮은 버전의 MySQL에는 이러한 기능이 부족하여 변수 설정을 통해 누적 합계를 구해야 합니다. (최신 버전, 8.0 이상에서는 앞서 말씀드린 함수가 사용 가능하게 업데이트 된 것으로 알고 있습니다.) 개인적으로 공부할SQL 쿼리를 활용하여 DB에 있는 데이터를 추출하다보면, 그룹별로 누적 합계를 계산해야 할 때가 있습니다. .. 2021. 4. 11.
728x90