SQL Server 71

SQL Server 14강 - 데이터베이스 생성과 삭제 (CREATE DATABASE, DROP DATABASE)

이번 글에서는 SQL Server에서 데이터베이스를 생성하고 삭제하는 방법을 실습해 보았습니다.데이터베이스는 데이터를 저장하고 관리하는 가장 큰 단위이며, 이를 자유롭게 만들고 제거할 수 있어야 본격적인 SQL 실습이 가능해집니다.📌 예제 코드-- 데이터베이스 생성CREATE DATABASE TestDB;-- 데이터베이스 삭제 전, master 데이터베이스로 전환USE master;-- 데이터베이스 삭제DROP DATABASE TestDB;💻 실행 결과 예시첫 번째 명령은 TestDB라는 이름의 새로운 데이터베이스를 생성합니다.두 번째 명령은 현재 연결 중인 데이터베이스에서 벗어나기 위해 master 데이터베이스를 사용하도록 설정합니다.세 번째 명령은 TestDB 데이터베이스를 완전히 제거합니다.이때..

SQL Server 연습문제 - 연도 및 섹터별 symbol 수 집계 및 조건 필터링

📖 문제 1nasdaq_company 테이블에서 ipo_year(상장 연도)를 기준으로, 등록된 symbol의 개수를 조회하세요. 결과는 ipo_year를 기준으로 내림차순 정렬하세요.📦 예제 테이블 정보CREATE TABLE nasdaq_company ( symbol VARCHAR(10), company_name VARCHAR(100), ipo_year INT, last_crawel_date DATETIME, close_price DECIMAL(10, 2), sector VARCHAR(100));📌 예제 정답SELECT ipo_year, COUNT(symbol) AS symbol_countFROM nasdaq_companyGROUP BY ipo_yearORDER BY ipo_year D..

SQL Server 13강 - DISTINCT vs GROUP BY

이번 글에서는 SQL에서 중복을 제거하는 두 가지 방법, DISTINCT와 GROUP BY에 대해 학습했습니다.두 구문 모두 중복 데이터를 제거하는 데 사용되지만, 용도와 특징에는 차이점이 있습니다.📌 예제 코드-- 중복 제거된 sector, industry 조합 조회 (단순 추출)SELECT DISTINCT sector, industry FROM nasdaq_company;-- 그룹화된 sector, industry 조합 조회 (집계 가능)SELECT sector, industry FROM nasdaq_company GROUP BY sector, industry;💻 실행 결과 예시위 두 쿼리는 결과만 보면 거의 동일해 보일 수 있지만, 실제로는 의미와 사용 용도가 다릅니다.첫 번째 쿼리는 secto..

SQL Server 12강 - 그룹 조건 필터링 (HAVING 절)

이번 글에서는 그룹화된 데이터에 조건을 적용할 때 사용하는 HAVING 절을 학습했습니다.HAVING은 WHERE과 비슷하지만, 집계 결과나 그룹 단위에 조건을 걸 때 사용됩니다.📌 예제 코드-- 그룹화 후 industry가 'Advertising'인 경우만 출력SELECT sector, industry FROM nasdaq_company GROUP BY sector, industry HAVING industry = 'Advertising';-- sector별 기업 수가 1000개를 초과하는 경우만 출력SELECT sector, COUNT(*) AS cnt FROM nasdaq_company GROUP BY sector HAVING COUNT(*) > 1000;-- industry가 'Advertisi..

SQL Server 11강 - 그룹별 데이터 개수 집계 (GROUP BY + COUNT())

이번 글에서는 GROUP BY와 함께 집계 함수 COUNT()를 사용하여, 각 그룹에 속한 행의 개수를 구하는 방법을 실습했습니다.특정 조건별로 데이터 분포를 분석하거나, 분류별 수량을 파악할 때 매우 유용한 문법입니다.📌 예제 코드-- 각 sector별 기업 수를 계산SELECT sector, COUNT(*) AS cnt FROM nasdaq_company GROUP BY sector;-- sector와 industry 조합별 기업 수를 계산SELECT sector, industry, COUNT(*) AS cnt FROM nasdaq_company GROUP BY sector, industry ORDER BY sector, industry;💻 실행 결과 예시위 쿼리는 nasdaq_company 테이..

SQL Server 오류 분석 - GROUP BY 절에서 SELECT *가 안 되는 이유

SQL Server에서 코드를 짜다보면 SELECT * FROM 테이블 GROUP BY 필드가 안되는 것을 확인할 수 있습니다.select * from 테이블 group by 필드이 실행되지 않는 이유는 다음과 같습니다.❌ 이유: GROUP BY를 사용할 때 SELECT *는 허용되지 않음SQL Server에서는 GROUP BY를 사용할 경우, SELECT 절에 포함된 컬럼들은 반드시 GROUP BY에 포함되거나, 집계 함수(예: COUNT(), SUM(), MAX() 등)를 사용해야 합니다.하지만 SELECT *는 모든 컬럼을 선택하는 것이기 때문에, GROUP BY sector만 사용하고 다른 컬럼들에 대해 아무런 처리도 하지 않으면 오류가 납니다.✅ 해결 방법 1: 집계 함수 사용예를 들어, sec..

SQL Server 10강 - 데이터 그룹화 (GROUP BY)

이번 글에서는 SQL의 GROUP BY 구문을 통해 데이터를 특정 컬럼 기준으로 그룹화하는 방법을 학습했습니다.이 기능은 주로 통계 분석, 분류, 요약 집계를 할 때 사용됩니다.📌 예제 코드-- sector 컬럼 기준으로 그룹화 (중복 제거)SELECT sector FROM nasdaq_company GROUP BY sector;-- industry 컬럼 기준으로 그룹화SELECT industry FROM nasdaq_company GROUP BY industry;-- sector, industry 두 컬럼을 기준으로 그룹화SELECT sector, industry FROM nasdaq_company GROUP BY sector, industry;-- industry, sector 순서로 그룹화 (컬럼..

SQL Server 연습문제 - 복합 조건 + 다중 정렬 쿼리 작성하기

📖 문제nasdaq_company 테이블에서 다음 조건을 만족하는 회사를 조회하는 SQL문을 작성하세요.close_price가 10 이상 20 이하company_name에 'A'가 포함되지 않음ipo_year가 2017년 이상결과는 close_price는 내림차순, ipo_year는 오름차순으로 정렬📦 예제 테이블 정보CREATE TABLE nasdaq_company ( symbol VARCHAR(10), company_name VARCHAR(100), ipo_year INT, last_crawel_date DATETIME, close_price DECIMAL(10, 2));📌 예제 정답SELECT * FROM nasdaq_companyWHERE close_price BETWEEN 10 A..

SQL Server 연습문제 - LIKE 와일드카드로 특정 문자 포함된 패턴 검색하기

📖 문제nasdaq_company 테이블에서 symbol이 'AA'로 시작하면서 'L' 또는 'Q'가 그 뒤에 오는 회사를 조회하는 SQL문을 작성하세요.📦 예제 테이블 정보CREATE TABLE nasdaq_company ( symbol VARCHAR(10), company_name VARCHAR(100), ipo_year INT, last_crawel_date DATETIME);📌 예제 정답SELECT * FROM nasdaq_companyWHERE symbol LIKE 'AA[L,Q]%';💬 해설LIKE 'AA[L,Q]%'는 symbol이 'AA'로 시작하고, 그 뒤에 'L' 또는 'Q' 중 하나가 나오는 문자열을 찾는 조건입니다.대괄호 [L,Q]는 문자 클래스(문자 집합)를 의미하며..

SQL Server 연습문제 - company_name에 'apple'이 포함된 데이터 조회하기

📖 문제nasdaq_company 테이블에서 company_name에 'apple'이라는 글자가 포함된 회사를 조회하는 SQL문을 작성하세요.📦 예제 테이블 정보CREATE TABLE nasdaq_company ( symbol VARCHAR(10), company_name VARCHAR(100), ipo_year INT, last_crawel_date DATETIME);📌 예제 정답SELECT * FROM nasdaq_companyWHERE company_name LIKE '%apple%';💬 해설LIKE '%apple%' 조건은 company_name 컬럼에 'apple'이라는 단어가 포함된 경우를 찾습니다.%는 0개 이상의 임의 문자를 의미하므로, 'apple' 앞뒤에 어떤 문자가 오더..

반응형