DB 8

[Mysql] 테이블 수정(ALTER) 간단 정리

ALTER 문은 데이터베이스 테이블 구조를 변경하는 데 사용되는 SQL 문입니다. 테이블의 구조 변경에는 다양한 작업이 포함될 수 있으며, 주요 ALTER 문의 사용 사례와 구문을 예시와 함께 설명하겠습니다. 1. 테이블에 새 열 추가하기: ALTER TABLE 테이블명 ADD 열명 데이터_유형; 예제 ALTER TABLE employees ADD phone_number VARCHAR(15); 이 예제는 employees 테이블에 phone_number라는 열을 추가합니다. 2. 기존 열 수정하기: ALTER TABLE 테이블명 MODIFY 열명 새_데이터_유형; 예제: ALTER TABLE customers MODIFY email VARCHAR(50); 이 예제는 customers 테이블의 email ..

DB/MySQL 2023.09.15

[Mysql] 범주 조회 (DISTINCT)

DISTINCT는 MySQL에서 사용되는 키워드로, 중복된 결과를 제거하여 고유한(unique) 결과만을 반환하도록 쿼리를 필터링합니다. 이것은 특히 중복된 데이터를 가진 열에서 고유한 값을 찾을 때 유용합니다. 구문 SELECT DISTINCT 열1, 열2, ... FROM 테이블명; 여기서 열1, 열2, ...는 선택하려는 열의 목록입니다. 테이블명은 데이터를 가져올 테이블의 이름입니다. 예제 다음은 orders 테이블에서 고유한 고객(customer) 목록을 가져오는 쿼리의 예제입니다. SELECT DISTINCT customer FROM orders; 이 쿼리는 orders 테이블에서 customer 열의 중복을 제거하고, 중복되지 않는 고유한 고객 목록을 반환합니다. 예제 데이터: | order..

DB/MySQL 2023.09.15

[Mysql] 컬럼 값 하나로 문자열로 합치기( GROUP_CONCAT)

▶설명 간혹 컬럼에 저장된 내용을 하나의 문자열로 가져와야하는 경우가 있습니다. 이 때 사용하는 함수가 GROUP_CONCAT 함수입니다. GROUP_CONCAT 함수는 지정된 컬럼에서 NULL이 아닌 값을 콤마(,)로 합쳐 하나의 문자열로 가져오는 함수입니다. ▶사용법 SELECT GROUP_CONCAT(묶을 컬럼 [, 데이터1, 데이터2 ...]) FROM 테이블명 [WHERE 조건]; 데이터1, 데이터2 등이 있으면, 컬럼 값에 추가로 데이터를 붙인 다음에 묶습니다. ▶예제 쿼리 (Example Query) 예제 테이블 : hero_collection idx type name 1 1 안중근 2 1 윤봉길 3 2 김유신 4 2 이순신 5 3 이성계 6 3 왕건 7 4 반갑수 8 4 (NULL) 쿼리 ..

DB/MySQL 2023.09.15

[Mysql] 그룹화하여 데이터 조회 (GROUP BY) + HAVING

MySQL에서 GROUP BY 구문은 특정 열(또는 열의 조합)을 기준으로 데이터를 그룹화하고 그룹 내에서 집계 함수를 사용하여 요약 정보를 생성하는 데 사용됩니다. GROUP BY는 일반적으로 집계 작업과 함께 사용되며 데이터를 카테고리별로 나누고 요약 정보를 계산하는 데 유용합니다. GROUP BY 구문의 기본 구조는 다음과 같습니다: SELECT column1, column2, ..., aggregate_function(column) FROM table WHERE conditions GROUP BY column1, column2, ...; 여기서 각 요소의 역할은 다음과 같습니다: column1, column2, ...: 그룹화할 열을 나타냅니다. 이 열은 SELECT 목록에 나타날 수도 있고, 아..

DB/MySQL 2023.09.15

[Mysql] 형 변환 CAST, CONVERT 차이 점 및 예시

MySQL에서 CAST와 CONVERT 함수는 데이터 형식을 변환하는 데 사용됩니다. 이 두 함수는 기본적으로 동일한 목적을 가지고 있으며, 데이터를 다른 데이터 형식으로 변환할 때 사용됩니다. CAST 함수 CAST 함수는 데이터를 지정된 데이터 형식으로 변환합니다. 일반적인 사용법은 다음과 같습니다: CAST(expression AS data_type) expression: 변환할 데이터 또는 표현식입니다. data_type: 변환하려는 데이터 형식을 나타냅니다. [예제] -- 문자열 '123'을 정수로 변환 SELECT CAST('123' AS SIGNED) AS result; [결과] +--------+ | result | +--------+ | 123 | +--------+ CONVERT 함수 ..

DB/MySQL 2023.09.15

[Mysql] ADDDATE , INTERVAL 사용해서 특정 날짜 (연, 월, 일, 시, 분, 초) 더하기 및 빼기

[코드] /* [ADDDATE , INTERVAL 사용해서 특정 날짜 기준 (연, 월, 일, 시, 분, 초) 더하기 및 빼기 수행 실시] 1. ADDDATE : 날짜에 시간/날짜 간격을 추가한 다음 날짜를 반환합니다 2. INTERVAL : 범위 및 간격을 의미합니다 3. AS : 약어를 표시할때 사용합니다 4. YEAR (연도) / MONTH (월) / DAY (일) / HOUR (시간) / MINUTE (분) / SECOND (초) 를 의미합니다 */ SELECT '2021-08-24 09:30:15' AS "[기준 시간]", ADDDATE("2021-08-24 09:30:15", INTERVAL 2 YEAR) AS "[2년] 더하기", ADDDATE("2021-08-24 09:30:15", INTE..

DB/MySQL 2023.09.15

[My-SQL] ON DELETE CASCADE (외래키로 연결된 row 한번에 지우는 법)

ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails 지울려고 하는 테이블의 row 가 다른 테이블에 foreign key로 묶여 있을때 나는 오류 ON DELETE CASCADE foreign key 로 연결된 데이터들이 일관성을 유지할 수 있도록 하기 위해서, foreign key constraints 라는 것이 있습니다. 공식 문서는 CASCADE 를 foreign key constraints 에서 옵션으로 사용할 수 있는 Referential Actions 이라고 설명합니다. CASCADE 는 부모 테이블의 row 에 DELETE 또는 UPDATE 명령어를 적용할 때, 자동적으로 자식 테이블의..

DB/MySQL 2023.02.17