SQL Server 80

[ 39일차 시험 ] 수업 정리 - SQL

오늘은 SQL Server 실습 기반 시험을 진행하였습니다. 시험에서는 테이블 생성부터 JOIN, 집계 함수, 서브쿼리, 문자열/날짜 처리, DDL/DML/DCL 이론까지 SQL의 전반적인 이해도와 실습 능력을 평가하였습니다.💻 시험 주요 내용 요약테이블 생성 및 관계 설정userTBL, buyTBL 생성 및 외래키(FK) 설정데이터 입력두 테이블에 SQL INSERT 구문으로 다중 레코드 삽입INNER JOIN / OUTER JOIN 실습구매 회원 조회, 구매 기록 있는 회원/없는 회원 조회 등서브쿼리최대/최소 키 비교, ANY, EXISTS, IN, NOT IN 활용집계 함수SUM(price * amount) 활용하여 총 구매액 계산MAX, MIN, AVG 등 사용하여 주식 가격 통계 구하기LIKE..

국비 2025.06.11

SQL Server 실전 쿼리 작성법 - 조건 검색 및 정렬, 삽입

📖 문제 17userTBL 테이블에서 아이디에 'B'가 포함된 사용자를 검색하고,아이디를 기준으로 내림차순 정렬하세요.📌 예제 정답SELECT useridFROM userTBLWHERE userid LIKE '%B%'ORDER BY userid DESC;💬 해설LIKE '%B%'는 아이디 중간에 'B'가 들어간 값을 찾습니다.%는 0개 이상의 임의 문자ORDER BY ... DESC는 내림차순 정렬💡 학습 포인트LIKE 연산자는 문자열 패턴 매칭에 사용ORDER BY는 정렬 조건 지정 (DESC: 내림차순, ASC: 오름차순)📖 문제 18userTBL에 데이터를 삽입하는 방법 두 가지를 작성하세요:① 모든 필드에 데이터 삽입② 특정 필드에만 데이터 삽입📌 예제 정답-- ① 모든 필드에 데이터 ..

SQL Server 서브쿼리 & 조건 실습 모음

📖 문제 5가장 키가 큰 사람과 가장 키가 작은 사람의 이름과 키를 조회하세요.📌 예제 정답SELECT username AS N'이름', height AS N'키'FROM userTBLWHERE height = (SELECT MAX(height) FROM userTBL) OR height = (SELECT MIN(height) FROM userTBL);💬 해설서브쿼리로 키의 최댓값, 최솟값을 구한 뒤해당 값과 일치하는 레코드만 출력💡 학습 포인트MAX(), MIN() 집계 함수는 단일 값을 반환OR 조건을 통해 둘 다 포함 가능📖 문제 6총 구매액이 1,000원 이상인 회원의 아이디와 구매액을 출력하고,구매액이 적은 순서로 정렬하세요.📌 예제 정답SELECT a.useri..

SQL Server JOIN 실습 - 구매회원, 구매기록 조회하기

📖 문제 3제품을 구매한 전체 회원을 조회하세요.출력: 아이디(userid), 고객명(username)📌 예제 정답SELECT DISTINCT b.userid AS N'아이디', a.username AS N'고객명'FROM userTBL AS aINNER JOIN buyTBL AS b ON a.userid = b.userid;💬 해설INNER JOIN을 통해 구매 기록이 있는 회원만 조회중복 구매가 있을 수 있으므로 DISTINCT로 한 번만 출력💡 학습 포인트INNER JOIN은 양쪽 테이블에 모두 존재하는 데이터만 추출DISTINCT는 중복 제거에 사용📖 문제 4userTBL의 아이디별로 총 구매 건수(행 수)를 구하세요.구매 기록이 없어도 모든 회원이 포함되어야 합니다.📌 예제..

SQL Server 기초 실습 - 테이블 생성부터 데이터 삽입까지

📖 문제 1userTBL, buyTBL이라는 두 테이블을 생성하고, 다음 조건에 맞게 관계를 설정하세요.userTBL: 회원 정보를 저장하는 테이블buyTBL: 회원이 구매한 상품 정보를 저장하는 테이블buyTBL.userid는 userTBL.userid를 참조하는 외래 키로 설정합니다.📦 테이블 생성 쿼리CREATE TABLE userTBL ( userid NVARCHAR(50) PRIMARY KEY, username NVARCHAR(50) NOT NULL, birthyear INT NULL, addr NVARCHAR(50), mobile1 NVARCHAR(50) NULL, mobile2 NVARCHAR(50) NULL, height INT NULL, md..

SQL Server 연습문제 - 특정 연도 주문 합계 조건으로 고객 정보 조회하기 (HAVING, INNER JOIN)

📖 문제Customers, Orders 두 테이블이 있습니다.각 고객은 여러 주문을 할 수 있으며, 각 주문은 특정 고객에 속합니다.2024년에 주문한 고객 중에서,총 주문 금액이 500 이상인 고객의 이름과 총 주문 금액을 구하는 SQL문을 작성하세요.📦 예제 테이블 정보-- 예제 테이블 생성CREATE TABLE Customers ( CustomerID INT PRIMARY KEY, CustomerName NVARCHAR(100));CREATE TABLE Orders ( OrderID INT PRIMARY KEY, CustomerID INT FOREIGN KEY REFERENCES Customers(CustomerID), OrderAmount DECIMAL(10, 2),..

[ 38일차 자습 ] 수업 정리 - SQL

39일날 시험이 예정되어 있어, 38일은 복습이 진행되었습니다. 💻 복습한 주요 SQL 주제기본 SELECT 문SELECT, FROM, WHERE, ORDER BY, TOP, OFFSET비교 연산자와 논리 연산자=, , , BETWEEN, IN, LIKE, IS NULL, IS NOT NULL, AND, OR정렬ORDER BY와 정렬 방향 (ASC, DESC)LIKE 패턴 검색와일드카드 %, _, 문자셋 [A-Z], 제외 [^A-Z]GROUP BY & HAVING집계함수와 함께 그룹화: COUNT, SUM, AVG, MIN, MAX그룹 조건 필터링: HAVING집계 함수전체 행 수, 컬럼 수, 중복 제거 수: COUNT(*), COUNT(컬럼), COUNT(DISTINCT)합계, 평균, 최솟값, 최댓값..

국비 2025.06.10

[ 37일차 53~54 ] 수업 정리 - SQL

오늘은 주식 데이터(stock 테이블)를 이용하여 52주 기준의 최소/최대 종가, 가격 차이, 등락률을 구하는 방법을 배웠습니다. 실무에서 주가 분석 지표로 자주 활용되는 로직입니다.📌 52주 가격 통계 구하기📘 기본 쿼리 구조SELECT symbol, CONVERT(decimal(18,2), MIN([close])) AS w52_min, CONVERT(decimal(18,2), MAX([close])) AS w52_max, CONVERT(decimal(18,2), MAX([close]) - MIN([close])) AS w52_diff_price, CONVERT(decimal(18,2), (MAX([close]) - MIN([close])) / MIN([close]) * 100) AS w52_dif..

국비 2025.06.10

SQL 문법 총 정리! - SQL에서 응용이 가능한 대부분의 명령어들

SQL 문법이라고 한다면, 제일 기본적인 언어로 소개되는 3가지 분류가 있습니다.이번 글의 시작은 기초라고 할 수 있는 그 세가지 문법에 대해서 설명하면서 시작하고자 합니다. ※ 간단 Tip, ( Ctrl + K + C ) → 드래그 범위 주석 처리 / (Ctrl + K + U ) → 드래그 범위 주석 해제 ※ SQL Server 설치하는 방법 📌 1. 데이터 정의 언어 (DDL)먼저, DDL은 데이터 정의 언어로 데이터베이스의 구조를 정의하거나 수정하는 데 사용하는 명령어들을 얘기합니다.간단하게 테이블을 만들고, 수정하고, 삭제하는 형태의 쿼리들을 DDL이라고 볼 수 있습니다.바로가기 - SQL 문법 분류: DDL, DML, DCL (+ 트랜잭션 제어)1️⃣ CREATE - 테이블 or DB 생성--..

SQL Server 54강 - 52주 변동률 계산 (서브쿼리와 CASE 활용)

이번 강의에서는 서브쿼리(Subquery)를 활용하여 52주 최저/최고가를 기반으로주가 차이와 변동률을 계산하는 방법을 알아봅니다.특히, 0으로 나누는 오류 방지를 위한 CASE 처리 방법도 함께 익혀봅니다.📌 예제 코드📄 기본 서브쿼리 사용SELECT X.symbol, w52_min, w52_max, w52_max - w52_min AS w52_diff_price, (w52_max - w52_min) / w52_min * 100 AS w52_diff_ratioFROM ( SELECT symbol, CONVERT(decimal(18,2), MIN([close])) AS w52_min, CONVERT(decimal(18,2), MAX..

반응형