2023년 초보자를 위한 전체 SQL 자습서

게시 됨: 2023-03-22

SQL(Structured Query Language)은 수십 년 동안 사용되어 왔으며 데이터를 관리하고 조작하는 데 사용되는 강력한 언어입니다. SQL을 배우고 싶었지만 어디서부터 시작해야 할지 모르겠다면 잘 찾아오셨습니다! 이 궁극적인 SQL 가이드는 2022년 초보자를 위한 완벽한 단계별 SQL 자습서 입니다. 이 SQL을 통해 SQL 기본 사항 , 쿼리 작성 방법 및 데이터베이스 관리, 테이블 생성 및 뷰 사용과 같은 고급 주제를 배우게 됩니다. 서버 튜토리얼. 이 가이드의 도움으로 SQL을 사용하여 자신 있게 프로젝트 데이터를 저장하고 검색할 수 있습니다. 자, 시작하겠습니다!

목차

SQL과 NoSQL의 차이점은 무엇입니까?

SQL(Structured Query Language)은 데이터를 저장하고 관리하는 데 사용되는 서버 언어입니다. 열과 행이 있는 테이블에 데이터를 저장하는 관계형 데이터베이스와 함께 자주 사용됩니다.

SQL은 구조화된 데이터베이스 관리 언어(DBML)의 일종으로 설정된 형식과 규칙을 따릅니다. SQL, NoSQL 및 NewSQL을 포함하여 여러 가지 유형의 DBML이 있습니다. NoSQL은 SQL을 포함하지 않는 일종의 DBML입니다. 보다 구조화되고 관계형 데이터 모델에서 가장 잘 작동하는 SQL과 달리 다양한 데이터 모델에 적용할 수 있는 개방형 언어입니다. 반면에 NewSQL은 새로운 데이터 유형과 같은 일부 업데이트를 포함하는 최신 버전의 SQL입니다.

upGrad에서 소프트웨어 개발 과정을 확인하십시오.

프로젝트를 위한 데이터베이스 설정

모든 SQL 자습서 의 첫 번째 단계는 프로젝트용 데이터베이스를 설정하는 방법을 배우는 것입니다. Firebase와 같은 클라우드 데이터베이스 서비스를 사용하는 경우 자체 데이터베이스를 설정할 필요가 없습니다. 그러나 로컬 데이터베이스가 필요한 프로젝트에서 작업하는 경우 수행해야 할 몇 가지 작업이 있습니다.

  • 먼저 명령줄을 열고 "cd" 명령(예: cd Desktop/myProject/)을 사용하여 프로젝트 디렉토리로 이동합니다.
  • 다음 SQL 쿼리를 사용하여 데이터베이스를 생성합니다. CREATE DATABASE 'myDatabaseName'.
  • 그런 다음 명령줄을 닫고 Visual Studio Code 또는 SQL Server Management Studio와 같은 선호하는 SQL 편집기를 열 수 있습니다.

데이터베이스를 설정했으면 이제 SQL 기본 사항을 이해 하고 다양한 쿼리와 명령을 시도하여 실시간으로 실행되는 것을 확인할 수 있습니다.

SQL 쿼리 작성 방법

이제 기본 SQL 쿼리를 작성하는 방법에 대해 이야기하겠습니다.

모든 SQL 쿼리에는SELECT 절, FROM절 및WHERE절의 세 가지 기본 부분이 있습니다.

SELECT 절은 검색할 데이터를 지정하는 곳입니다. FROM 절은 데이터를 검색할 수 있는 테이블을 지정합니다. WHERE 절은 데이터가 결과에 포함되기 위해 충족해야 하는 조건을 지정합니다.

다음은 간단한SELECT 쿼리 의 예입니다 .

SELECT * FROM '고객';

이 쿼리는 'customers' 테이블에서 모든 고객을 가져옵니다. 다음은 또 다른 예입니다.

'고객' WHERE '고객'에서 '이름', '성'을 선택합니다. '주' = '텍사스';

이 쿼리는 'customers' 테이블에서 firstName 및 lastName 필드를 선택하고 텍사스에 거주하는 고객만 포함합니다.

이러한 기본 쿼리를 기반으로 구축하고 달성하려는 목표에 따라 더 복잡하고 상호 연결된 명령을 실행할 수도 있습니다. 그러나 이러한 모든 SQL 쿼리의 기본 구조도 위에서 설명한 것과 동일합니다. 구문은 동일하게 유지됩니다!

US 확인 - 데이터 과학 프로그램

데이터 과학 및 비즈니스 분석의 전문 인증 프로그램 데이터 과학 석사 데이터 과학 석사 데이터 과학의 고급 인증 프로그램
데이터 과학의 임원 PG 프로그램 파이썬 프로그래밍 부트캠프 비즈니스 의사 결정을 위한 데이터 과학 전문 인증 프로그램 데이터 과학의 고급 프로그램

테이블, 뷰 및 인덱스 생성의 기본 사항

이제 몇 가지 SQL 기본 사항 , 특히 쿼리 실행을 간략하게 살펴보았 으므로 이 SQL 자습서를 한 단계 더 발전시켜 테이블, 보기 및 인덱스에 대해 이야기해 보겠습니다. 테이블부터 시작합니다.

SQL에서 테이블을 생성하는 것은 쉽습니다. CREATE TABLE 쿼리를 사용하고 테이블 이름과 열을 지정하기 만 하면 됩니다 .예를 들어:

CREATE TABLE 'customers'('id' INT PRIMARY KEY, 'firstName' VARCHAR(40) NOT NULL, 'lastName' VARCHAR(40) NOT NULL, 'state' VARCHAR(40) NOT NULL, 'emailAddress' VARCHAR(40) NULL이 아님)

위에서 언급한 쿼리를 분석하면 다음과 같습니다.

  • 쿼리를 사용하여 'customers'라는 이름으로 테이블을 생성합니다.
  • 테이블에는 다음 속성(또는 열)이 있습니다.

1. Id – 데이터 유형이 'int'입니다.이 속성은 기본 키이기도 합니다. 즉, 테이블을 채우는 동안 이 세부 정보를 비워둘 수 없으며 이 속성은 다른 테이블에서 이 테이블을 참조하는 동안 사용됩니다.

2.firstName – 데이터 유형이 'varchar'이고 최대 길이는 40자입니다.이 특성은 Not Null로 설정되며, 이는 이 필드도 비워둘 수 없음을 의미합니다.

3. 마찬가지로 lastName, state 및 emailAddress는 firstName 속성과 동일한 속성을 가진 세 가지 추가 속성입니다.

테이블을 만든 후에는 다음과 같이 INSERT INTO 쿼리를 사용하여 테이블에 데이터를 삽입할 수 있습니다.

INSERT INTO '고객'('id', 'firstName', 'lastName', 'state', 'emailAddress') 값(1, 'John', 'Doe', 'Texas', '[email protected] ');

다음과 같이 DROP TABLE 쿼리를 사용하여 테이블을 삭제할 수도 있습니다 . DROP TABLE 'customers';

이제 뷰에 대해 이야기해 보겠습니다. 뷰는 기본적으로 SQL 메모리에만 존재하는 테이블입니다. 보기는 원래 데이터를 실제로 수정하지 않고 데이터를 조작하는 데 사용할 수 있기 때문에 유용합니다.

'고객'이라는 고객 정보가 있는 테이블이 있고 모든 고객의 평균 연령을 알고 싶다고 가정해 보겠습니다. 이를 위해 모든 고객의 연령을 합산하고 합계를 고객 수로 나누는 'averageAge'라는 뷰를 만들 수 있습니다.

마찬가지로 인덱스를 만들 수도 있습니다. 인덱스는 더 빠른 방법으로 데이터베이스에서 데이터를 검색하는 도구로 생각할 수 있습니다. 사용자는 인덱스를 볼 수 없으며 검색/쿼리 속도를 높이기 위한 것입니다. 다음 구문을 사용하여 이 작업을 수행할 수 있습니다.

CREATE INDEX index_name ON table_name(column1, column2, …);

SQL의 고급 항목: 트랜잭션 및 저장 프로시저 사용

트랜잭션을 사용하면 여러 SQL 쿼리가 전체적으로 성공하거나 실패하도록 함께 그룹화할 수 있습니다. 쿼리가 서로 상호 작용하여 함께 그룹화되지 않으면 문제가 발생할 수 있으므로 여러 쿼리를 실행해야 하는 경우에 유용합니다.

BEGIN TRANSACTION 쿼리를 사용하여 트랜잭션을 시작 하고 COMMIT TRANSACTION쿼리를 사용하여 종료할 수 있습니다.ROLLBACK TRANSACTION 쿼리를 사용하여 트랜잭션을 종료하고 변경 사항을 버릴 수도 있습니다.

여러 쿼리를 함께 그룹화해야 하는 경우 저장 프로시저를 사용할 수 있습니다. 다른 프로그래밍 언어에서 함수를 사용하는 것처럼 저장 프로시저는 SQL에서 사용할 수 있는 코드입니다. CREATE PROCEDURE 쿼리를 사용하여 저장 프로시저를 만들고 DROP PROCEDURE쿼리를 사용하여 종료 할 수 있습니다 .

더 나은 성능을 위해 SQL 쿼리를 최적화하는 방법

이제 SQL 기본 사항 과 쿼리 작성 방법을 알았으므로 더 나은 성능을 위해 SQL 쿼리를 최적화하는 방법에 대해 이야기하겠습니다.

  • 데이터가 구성되어 있고 테이블이 너무 크지 않은지 확인하십시오. 큰 테이블은 쿼리 실행 속도를 저하시키고 데이터베이스에 잠재적인 문제를 일으킬 수 있습니다.
  • 인덱스가 올바르게 생성되었는지 확인하십시오. 데이터가 관계형인 경우 인덱스를 사용하면 쿼리 속도를 높일 수 있습니다.
  • 데이터베이스 엔진은 SQL 쿼리를 처리하므로 데이터베이스 엔진이 최적화되고 빠른지 확인하십시오. 동시 연결 수, 스레드 설정 및 CPU와 같은 설정을 조정하여 데이터베이스 엔진을 최적화합니다.

초보자를 위한 SQL 리소스

이제 이 SQL 가이드를 마쳤으므로 SQL 전문가가 되는 길을 잘 가고 있습니다! 계속 배우고 싶다면 확인할 수 있는 몇 가지 리소스가 있습니다. 첫 번째는 "Learn SQL the Hard Way"입니다. 이 리소스는 SQL에 대해 필요한 모든 것을 알려주는 완벽한 단계별 가이드입니다. 배운 내용을 연습하는 데 도움이 되도록 각 장 끝에 연습 문제도 포함되어 있습니다. 또 다른 유용한 리소스는 "W3Schools SQL 자습서 "입니다. 이 웹 사이트에는 이해하고 따르기 쉬운 포괄적인 SQL 자습서 도 있습니다.

결론적으로

이 기사에서 SQL에 대한 완전하면서도 간략한 개요를 제공했습니다. 아이디어는 프로젝트를 편안하게 처리할 수 있도록 SQL 여정을 시작하는 데 도움이 되는 것입니다. 결국 SQL(또는 일반적으로 데이터베이스 관리)은 모든 소프트웨어 개발 노력의 핵심입니다. 풀 스택 개발자가 되고자 하는 경우 특히 그렇습니다. 그러면 프런트 엔드 및 백 엔드 작업과 데이터베이스 관리 작업 수행에 대해 잘 알고 편안하게 작업할 수 있을 것으로 기대되기 때문입니다.

upGrad는 오늘날 풀스택 개발의 중요성을 이해하고 있으며 다재다능한 풀스택 개발자에게는 모든 중요한 측면에서 적절한 교육과 연습이 필요하다고 믿습니다. 이에 따라 소프트웨어 개발 분야의 13개월 간행 대학원 프로그램 – 풀 스택 개발을 시작했습니다 . 이 과정은 업계 전문가 및 리더와 함께 전체 스택 개발의 세계로 안내합니다.

자세한 내용은 과정을 확인하고 빨리 등록하십시오!

SQL은 무엇을 위해 사용됩니까?

SQL은 테이블과 같은 구조화된 형식으로 저장된 데이터를 관리하고 조작하는 데 사용되는 데이터베이스 관리 언어입니다. 이 공통 데이터베이스 언어는 데이터베이스에서 중요한 데이터를 입력하고 검색하는 데 크게 도움이 됩니다.

SQL에 대한 대안이 있습니까?

다양한 도구가 SQL 위에 구축되지만 SQL은 여전히 ​​구조화된 데이터 관리의 핵심입니다. 관계형 데이터베이스와의 상호 작용 측면에서 SQL에 대한 대안은 없지만 애플리케이션에 SQL을 쉽게 통합할 수 있는 많은 대안이 있습니다. 여기에는 HaskellDB, ScalaQL 등이 포함됩니다.

컴퓨터 배경 지식이 없는 사람이 SQL을 이해할 수 있습니까?

SQL은 매우 직관적이고 배우기 쉽습니다. 훈련된 연습을 통해 SQL 작업을 쉽게 시작하고 학업 배경에 관계없이 동기와 의지가 있는 한 계속 학습할 수 있습니다.