1. SQL이란?
- SQL이란 Structured Query Langauge, 구조적 쿼리 언어로 관계형 데이터베이스에 정보를 저장하고 처리하기 위한 프로그래밍 언어이다.
- 관계형 데이터베이스는 정보를 표 형식으로 저장하며, 행과 열은 다양한 데이터 속성과 데이터값 간의 관계를 나타낸다.
- SQL문을 사용하여 데이터베이스에서 정보를 저장, 업데이트, 제거, 검색 등을 할 수 있으며 데이터베이스의 성능을 유지, 관리하고 최적화하는데에 SQL을 사용하기도 한다.
- SQL은 모든 유형의 어플리케이션에서 자주, 널리 사용되는 쿼리 언어로 데이터 분석가와 개발자는 SQL이 서로 다른 프로그래밍 언어와 잘 통합되기 때문에 사용한다.
- Oracle 또는 MS SQL Server와 같은 주요 SQL 데이터베이스 시스템으로 고성능 데이터 처리 어플리케이션을 빌드할 수 있다.
2. SQL 명령어 종류
1) 데이터 정의어 DDL(Data Definition Language)
- 데이터베이스의 전체적인 구조나 골격을 설계하는 명령을 나타낸다.
- 어떤 데이터베이스, 스키마, 테이블이 필요한지를 설계한다.
- 데이터베이스 엔지니어는 DDL을 사용하여 비즈니스 요구에 따라 데이터베이스 객체를 만들고 수정한다.
- CREATE(생성), ALTER(수정), DROP(삭제), TRUNCATE(초기화)
2) 데이터 쿼리어 DQL(Data Query Language)
- 관계형 데이터베이스에 저장된 데이터를 검색하기 위한 명령으로 구성된다.
- 소프트웨어 어플리케이션은 SELECT 명령을 사용하여 테이블의 특정 결과를 필터링하고 반환한다.
3) 데이터 조작어 DML(Data Manipulation Language)
- 구조가 아닌 테이블 안에 있는 데이터를 조작하는 역할을 한다.
- 새 정보를 쓰거나 관계형 데이터베이스의 기존 레코드를 수정한다.
- INSERT(추가), UPDATE(수정), DELETE(삭제), SEARCH(검색)
4) 데이터 제어어 DCL(Data Control Language)
- 데이터베이스 관리자는 데이터 제어어를 사용하여 다른 사용자의 데이터베이스 엑세스를 관리하거나 권한을 부여한다.
- GRANT(데이터를 사용할 권한을 부여), REVOKE(권한을 박탈)
5) 트랜잭션 제어 언어 TCL(Transaction Control Language)
- 트랜잭션은 데이터베이스의 상태를 변화시키는 기능을 수행하기 위한 작업이다.
- TCL은 데이터베이스를 자동으로 변화시키는 작업을 제어하는 언어이다.
- COMMIT(수정한 작업을 저장), ROLLBACK(수정한 작업을 취소), SAVEPOINT(특정 지점으로 되돌리기)
3. MySQL이란?
- MySQL은 Oracle에서 제공하는 오픈 소스 관계형 데이터베이스 관리 시스템이다.
- SQL은 데이터베이스 생성 및 조작을 위한 '표준 언어'이고 MySQL은 SQL 쿼리를 사용하는 관계형 데이터베이스 프로그램이다.
- SQL은 국제 표준에 의해 정의되지만 MySQL 소프트웨어는 지속적인 업그레이드 및 개선을 거친다.
4. NoSQL이란?
- NoSQL은 테이블을 사용하여 데이터를 저장하지 않는 비관계형 데이터베이스를 나타낸다.
- NoSQL 데이터베이스는 수평 확장이 가능하기 때문에 최신 어플리케이션에 널리 사용된다.
- 수평 확장이란 NoSQL 소프트웨어를 실행하는 컴퓨터를 더 추가하여 처리 능력을 높이는 것을 의미한다.
- SQL은 일관된 데이터 조작어를 제공하지만 NoSQL 구현은 서로 다른 기술에 따라 달라진다.
- 개발자는 트랜잭션 및 분석 어플리케이션에 SQL을 사용하는 반면 NoSQL은 응답성이 높고 사용량이 많은 어플리케이션에 적합하다.
5. SQL 서버란?
- SQL Server는 SQL로 데이터를 조작하는 Microsoft의 관계형 데이터베이스 관리 시스템의 공식 명칭이다.
6. 참고 사이트
- MySQL Tutorial: https://www.mysqltutorial.org/mysql-basics/
- MySQL 공식문서: https://dev.mysql.com/doc/
- SQL Server 공식문서: https://learn.microsoft.com/ko-kr/sql/?view=sql-server-ver16
- SQL 실습 사이트: https://www.w3schools.com/
- SQL 코딩테스트 플랫폼: https://www.hackerrank.com/dashboard
- AWS의 SQL 소개: https://aws.amazon.com/ko/what-is/sql/
'SQL' 카테고리의 다른 글
HackerRank 해커랭크 SQL 예제 추가 풀이 (1) (0) | 2023.06.23 |
---|---|
WHERE문 해커랭크 예제 풀이(DISTINCT, NOT LIKE) (0) | 2023.06.22 |
LIKE/IN/BETWEEN/IS NULL (0) | 2023.06.20 |
WHERE/AND/OR (0) | 2023.06.20 |
SELECT/FROM/LIMIT + 해커랭크 예제 (0) | 2023.06.20 |