✨ SQL 산술 연산자 (Arithmetic Operators)
산술 연산자는 SQL에서 숫자 값의 계산을 수행할 때 사용하는 기본 연산자들입니다. 테이블의 특정 열에 대한 계산을 하거나 여러 값을 조합하여 새로운 결과를 만들어낼 수 있습니다.
연산자 설명 예시 결과
+ | 덧셈: 두 값을 더함 | SELECT 10 + 5; | 15 |
- | 뺄셈: 첫 번째 값에서 두 번째 값을 뺌 | SELECT 10 - 5; | 5 |
* | 곱셈: 두 값을 곱함 | SELECT 10 * 5; | 50 |
/ | 나눗셈: 첫 번째 값을 두 번째 값으로 나눔 | SELECT 10 / 2; | 5 |
% | 나머지: 첫 번째 값을 두 번째 값으로 나눈 나머지 | SELECT 10 % 3; | 1 |
💡 예시
- 월급에 보너스 추가
직원의 월급에 보너스를 더하여 총 급여를 조회할 수 있습니다.
SELECT employee_id, salary + bonus AS total_salary
FROM employees;
salary와 bonus 값을 더해 total_salary를 계산합니다.
- 할인 적용 후 가격 계산
상품 가격에서 할인을 적용한 최종 금액을 조회할 수 있습니다.
SELECT product_name, price - discount AS discounted_price
FROM products
WHERE discount IS NOT NULL;
할인이 적용된 상품들만 discounted_price로 조회할 수 있습니다.
- 총 판매 금액 구하기
주문에서 각 항목의 수량과 단가를 곱하여 총 판매 금액을 계산합니다.
SELECT order_id, quantity * unit_price AS total_price
FROM order_details;
quantity와 unit_price를 곱해 total_price를 구할 수 있습니다.
- 평균 점수 계산
학생의 시험 점수를 평균하여 출력할 수 있습니다.
SELECT student_id, (math + science + english) / 3 AS average_score
FROM students_scores;
math, science, english 세 과목 점수를 합하여 평균 점수를 구합니다.
- 나머지 계산
재고가 특정 수량으로 균등하게 나누어지는지 확인할 수 있습니다.
SELECT product_name, quantity % 5 AS remainder
FROM inventory;
각 상품의 quantity를 5로 나눈 나머지를 조회하여, 재고가 특정 단위로 나누어지는지 확인할 수 있습니다.
✨ SQL 합성 연산자 (Concatenation Operators)
합성 연산자는 문자열을 결합하여 하나의 문자열로 만들어주는 연산자입니다. SQL에서는 ||(SQL 표준) 또는 +(SQL Server) 연산자를 통해 여러 문자열을 합성할 수 있습니다.
연산자 | 설명 | 예시 | 결과 |
|| | 문자열 결합: 두 문자열을 결합 | SELECT 'Hello' || ' ' || 'World'; | Hello World |
+ | 문자열 결합: 두 문자열을 결합 | SELECT 'Hello' + ' ' + 'World'; | Hello World |
💡 예시
- 이름과 직책 결합
직원의 이름과 직책을 결합하여 표시할 수 있습니다.
SELECT first_name || ' ' || last_name || ', ' || job_title AS full_description
FROM employees;
이름과 직책을 결합해 full_description 열에 출력합니다. 예: "Alice Brown, Sales Manager"
- 주소 생성
고객의 주소를 결합하여 하나의 문자열로 조회할 수 있습니다.
SELECT street || ', ' || city || ', ' || state || ' ' || zip_code AS full_address
FROM customers;
각 주소 요소를 결합하여 full_address 열에 표시합니다.
- 제품 설명 생성
제품명과 설명을 결합하여 완성된 설명을 생성할 수 있습니다.
SELECT product_name || ': ' || description AS product_details
FROM products;
product_name과 description을 결합해 product_details 열에 출력합니다. 예: "Laptop: High-performance laptop with 16GB RAM"
- 전화번호 포맷팅
고객의 전화번호를 포맷팅하여 일관된 형식으로 보여줄 수 있습니다.
SELECT '(' || area_code || ') ' || phone_number AS formatted_phone
FROM contacts;
area_code와 phone_number를 결합해 일관된 전화번호 형식으로 출력합니다. 예: "(123) 456-7890"
- 풀네임 생성
학생의 이름과 성을 결합해 풀네임을 생성할 수 있습니다.
SELECT last_name || ', ' || first_name AS full_name
FROM students;
성과 이름을 결합해 full_name 열에 표시합니다. 예: "Doe, John"
요약 ✍️
SQL 연산자를 사용하면 데이터를 유연하게 다룰 수 있으며, 계산이나 텍스트 결합을 통해 원하는 형태의 결과를 만들어낼 수 있습니다.
- 산술 연산자:
-
- (덧셈), (뺄셈), (곱셈), / (나눗셈), % (나머지)
- 숫자 계산, 금액 계산, 평균 점수 구하기 등 수치 데이터를 조작할 때 유용하게 사용됩니다.
-
- 합성 연산자:
- || 또는 + (문자열 결합)
- 이름, 주소, 설명 등을 결합하여 하나의 문자열로 표현하고자 할 때 사용합니다.
'프로그래밍 언어 > SQL' 카테고리의 다른 글
[SQL 개념 정리 6] WINDOW 함수 (0) | 2024.11.13 |
---|---|
[SQL 개념 정리 5] 연결(JOIN) 쿼리 (0) | 2024.11.13 |
[SQL 개념 정리 4] 변환 쿼리 (0) | 2024.11.13 |
[SQL 개념 정리 3] 집계 쿼리 (0) | 2024.11.13 |
[SQL 개념 정리 1] SQL의 개요와 데이터 조회/필터링 쿼리 (0) | 2024.11.12 |
데이터 분석을 공부하고 카페를 열심히 돌아다니는 이야기
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!