컴퓨터프로그래밍

기본 SQL 문

SQL 표준은 1992 년에 오늘날에도 여전히 사용에 채택되었다. 그가 많은에 대한 벤치 마크가되었다 데이터베이스 관리 시스템. 물론, 일부 제조 업체는 표준의 자신의 해석을 사용합니다. SQL 문 - 그러나 어떤 시스템에서 여전히 주요 구성 요소가 있습니다.

소개

데이터베이스에 SQL 문을 사용하여 값 관리 테이블과 추가 분석 및 디스플레이에 대한 자신의 준비가 발생합니다. 그들은 시스템이 데이터로 무엇을 알고있는 키워드의 집합입니다.

SQL 문을 여러 범주를 정의합니다 :

  • 데이터베이스 개체의 정의;
  • 값을 조작;
  • 보호 및 관리;
  • 세션 매개 변수;
  • 기본에 대한 정보;
  • 정적 SQL;
  • 동적 SQL.

데이터 조작에 대한 SQL 문

이 범주에는 데이터베이스에서 값의 위치를 제어 할 수있는 키워드가 포함되어 있습니다.

INSERT. 기존 테이블에 행을 삽입합니다. 이것은 특정 조건에 의해 정의되는 하나 또는 다수의 값으로 사용될 수있다. 예를 들면 :

INSERT INTO

테이블 이름 (컬럼 1 명, 컬럼 명 2)

VALUES (값 1 값 2).

운영자 사용하려면 SQL 문을 여러 값으로 INSERT를 다음 구문을 사용합니다 :

INSERT INTO

표 1 명 (컬럼 1 명, 컬럼 명 2)

SELECT 1 열 이름 열 (2)의 이름

테이블 이름이 FROM

WHERE 이름 2.imya 테이블 컬럼 1> 2

이 질의는 2보다 큰 1 개 컬럼과 제에 붙여은 표 2의 모든 데이터를 선택한다.

UPDATE. 이름에서 알 수 있듯이,이 문장은 어떤 기준으로 기존 테이블의 SQL 쿼리 데이터를 업데이트합니다.

예 :

UPDATE 테이블 이름 (1)

SET 열 이름 = 2 "바질"

WHERE 테이블 이름 1.imya 컬럼 1 = 1

이 구조 채움 값 바 첫 번째 열에서의 숫자를 만족하는 모든 행.

삭제합니다. 테이블에서 데이터를 삭제합니다. 당신은 어떤 조건을 지정하거나 모든 행을 제거합니다.

테이블 이름에서 삭제

WHERE 이름 tablitsy.imya 컬럼 1 = 1

위의 쿼리는 첫 번째 열의 값 하나를 사용하여 데이터베이스에서 모든 데이터가 삭제됩니다. 다음은 전체 테이블을 삭제하는 방법은 다음과 같습니다

테이블 이름에서 삭제.

다음 SELECT 문에 대해 이야기하는 것이 필요하다. 그는 가장 중요한 중 하나입니다, 그래서 그는 별도의 장을 할애해야합니다.

SELECT 문

SELECT의 주요 목적 - 특정 조건에 따라 데이터를 선택. 그의 작품의 결과는 항상 선택 데이터를 새 테이블이다. MS 운영자 SQL SELECT는 다른 요청을 가중 할 수 있습니다. 따라서, 그것과 함께, 당신은 다른 관련 키워드를 고려할 수 있습니다.

데이터 심볼 "*"을 모두 선택하려면 특정 테이블에서 사용된다.

SELECT *

테이블 이름 1

이 쿼리의 결과는 표 1의 정확한 복사본이 될 것입니다.

그리고 여기에 의해 페치되는 경우 1 열의 2보다 표 1에서 꺼내서 조건이 모두 큰 값.

SELECT *

테이블 이름 1

WHERE 이름 1.imya 테이블 컬럼 1> 2

또한 특정 열이 필요한 선택에 지정할 수 있습니다.

SELECT 테이블 이름 1.imya 열 (1)

테이블 이름 1

이 쿼리의 결과 것, 대체 계산하고 특정 값을 대체하는 과정에서, 자신의 테이블을 만들 수 있습니다 MS SQL 연산자를 사용하여 열 1의 값을 가진 모든 행.

SELECT

테이블 이름 1.imya 컬럼 1

테이블 이름 1.imya 열이

테이블 이름 1.imya 칼럼 (3)

«=»EQ AS

SUMMA AS 테이블 명 * 1.imya 칼럼 (3)의 테이블 이름 1.imya 2 열

테이블 이름 1

이 겉으로는 복잡한 쿼리는 표 1의 값을 모두 인출 한 다음 새 열 및 EQ SUMMA을 만듭니다. 먼저 2와 3이 결과가 어떻게 작동하는지 이해하기위한 테이블로 표현 될 수있는 제품의 두 번째 데이터 열에서 "+"기호를 입력 :

1 열

열이

3 열

EQ

SUMMA

제품 이름 (1)

(10)

(50)

+

(500)

제품 이름이

(15)

(100)

+

1,500

당신이 SELECT 문을 사용하는 경우, 당신은 즉시 근거로 데이터를 주문 보낼 수 있습니다. 그것은 BY 단어 ORDER를 사용합니다.

SELECT

테이블 이름 1.imya 컬럼 1

테이블 이름 1.imya 열이

테이블 이름 1.imya 칼럼 (3)

테이블 이름 1

열 이름이 BY ORDER

결과 테이블은 다음과 같이 표시됩니다

1 열

열이

3 열

(1)

(1)

(54)

3

(12)

(7)

3

(100)

5

(1)

즉, 모든 라인은 열 2 개 값이 상승 하였다가되도록 설치되어있다.

데이터는 여러 테이블에서 얻을 수 있습니다. 명확하게하기 위해, 먼저 그들이 어떤 데이터베이스에있는 두 가지가 있다고 가정합니다 :

표 "종업원"

이름

(1)

Vasya

Vasin

페티

Petin

표 "급여"

적립

(1)

(1)

10000

0.5

3500

지금 당신은 공통의 가치를 얻을 수있는 두 테이블을 연결로 필요합니다. 다음과 같이 수행 할 수있는 기본적인 SQL 문을 사용하여 :

SELECT

Sotrudniki.Nomer

Sotrudniki.Imya

Zarplata.Stavka

Zarplata.Nachisleno

종업원 급여에서

WHERE Sotrudniki.Nomer = Zarplata.Nomer

숫자 연합 값이 개 다른 테이블에서 가져온 있습니다. 결과는 다음과 같은 데이터 집합입니다 :

이름

적립

(1)

Vasya

(1)

10000

페티

0.5

3500

선택 (SELECT)에 대해 조금 더. 집계 함수를 사용하여

기본 SQL SELECT 문 중 하나는 샘플에서 몇 가지 계산을 생성 할 수 있습니다. 이를 위해, 그는 특정 함수 및 수식을 사용합니다.

예를 들어, 쿼리를 사용하는 데 필요한 테이블 "종업원"에서 레코드 수를 얻을 수 있습니다 :

N AS SELECT COUNT (*)

직원들의

그 결과, 하나 개의 칼럼 값 및 테이블 것이다.

N

함수 합계의 최대 값과 최소값 및 평균값을 계산 쿼리에서 사용될 수있다. 이렇게하려면, 키워드는 SUM, MAX, MIN, AVG를 사용한다.

예를 들어, 이미 알려진 "급여"테이블의 샘플을 보유 할 필요가있다 :

적립

(1)

(1)

10000

0.5

3500

당신은 이러한 요청을 적용하고 어떻게 볼 수 있습니다 :

SELECT

SUMMA AS SUM (Zarplata.Nachisleno)

MAX AS MAX (Zarplata.Nachisleno)

MIN AS MIN (Zarplata.Nachisleno)

SRED AS AVG (Zarplata.Nachisleno)

급여에서

다음과 같이 최종 테이블은 다음과 같습니다

SUMMA

MAX

MIN

SRED

13500

10000

3500

6750

즉, 방법, 당신은 즉시 적절한 값은 다양한 기능의 계산을 수행하기 위해 데이터베이스에서 선택할 수 있습니다.

연합 (EU), 교차 및 차이

SQL에서 여러 쿼리를 결합

SELECT Sotrudniki.Imya

직원들의

WHERE Sotrudniki.Nomer = 1

UNION

SELECT Sotrudniki.Imya

종업원 급여에서

WHERE Zarplata.Nomer = 1

그것은이 연관 테이블에 호환 가능해야합니다 명심해야한다. 즉, 동일한 수의 열이 있습니다.

SELECT 문의 구문 및 처리 절차

우선 SELECT는 데이터를 취할 것입니다있는 영역을 결정합니다. 이렇게하려면에서 키워드를 사용합니다. 지정하지 않으면, 무엇을 선택합니다.

그런 다음 WHERE SQL 문을 표시 할 수 있습니다. SELECT의 도움으로 테이블의 각 행을 통해 실행 조건의 준수에 대한 데이터를 확인합니다.

조회가 GROUP BY이있는 경우,이 매개 변수의 값의 그룹이있다.

운영자는 데이터를 비교

그들은 여러 종류가 있습니다. SQL에서 비교 연산자는 값의 다른 유형을 테스트 할 수 있습니다.

  • "=". 당신이 두 표현의 평등을 짐작대로 나타냅니다. WHERE Zarplata.Nomer = 1 - 예를 들어, 이미 위의 예에서 사용되었다.

  • ">". 보다 큼 기호. 식의 좌측의 값이 큰 경우에는 논리 TRUE 다음 리턴과 조건이 충족된다.

  • "<". 기호 미만. 이전 연산자를 역방향.

  • "<="와 "> ="징후. 이는 더 적은 간단한 연산자 상이 동일한 피연산자 조건도 참이다.

  • "<>". 난 상관 없어. 하나의 피연산자가 서로 동일하지 않은 경우, 조건은 TRUE 여겨진다. "! ="- 그는 또 하나 개의 해석을 가지고있다.

LIKE

이 키워드로 할 수 있습니다 번역 "유사한." SQL의 연산자는 같은 원리로 약 사용 LIKE - 템플릿에서 쿼리를 실행합니다. 즉, 당신이 정규 표현식을 사용하여 데이터베이스에서 샘플 데이터를 확장 할 수 있습니다.

예를 들어, 이러한 작업을 설정합니다 : 이미 알려진 기본 "직원"에서 이름이 "I"로 끝나는 모든 사람을 얻을 수 있습니다. 그런 다음 다음과 같이 요청을 구성 할 수있다 :

SELECT *

직원들의

WHERE 이름 LIKE '% I`ll

이 경우 백분율 기호는 마스크, 모든 문자, 그들의 수를 의미한다. 그리고 편지에서, "나는 SQL이 마지막 문자는 그 방법이있을 것으로 판단».

CASE

이 문장의 SQL 서버는 여러 선택의 구현입니다. 그것은 많은 프로그래밍 언어에서 switch 문을 유사합니다. SQL의 CASE 문은 여러 조건에 대한 작업을 수행합니다.

예를 들어, 테이블 "급여"최대 값과 최소값에서 선택합니다.

적립

(1)

(1)

10000

0.5

3500

그런 다음 다음과 같이 요청을 구성 할 수있다 :

SELECT *

급여에서

WHERE SELECT MAX는 (유료) CASE THEN 최대

언제 SELECT MIN (유료) THEN 최소

최종 결과

이 문맥에서의 "충전"열에서, 시스템은 최대 및 최소값을 찾는다. 그리고, "최대"또는 조건의 결과에 따라 "최소"에 기록 될 "총"생성 END 필드를 사용.

그런데, SQL의 CASE의 컴팩트 형태가있다 - COALESCE.

데이터 정의

생성, 삭제, 수정 및 인덱스 작업 -이보기 변경 테이블의 다양한 수행 할 수 있습니다.

고려 가치가있다 첫 번째는, - 테이블을 만듭니다. 그는 테이블을 만드는 것보다 아무것도하지 않습니다. 당신은 단순히 TABLE 쿼리를 만들 입력하면 여러 이상의 매개 변수를 지정할 필요가 있기 때문에, 아무것도 일어나지 않을 것이다.

예를 들어, 익숙한 테이블을 만들려면 "종업원"는 명령을 사용합니다 :

표 종업원을 CREATE

(ID 번호 (10) NULL NOT

이름 varchar (50) NULL NOT

마지막 이름 varchar (50) NOT NULL)

이 요청에 괄호로 즉시 필드 이름과 유형을 정의뿐만 아니라 여부 등이 NULL이 될 수 있습니다.

DROP 표

말했다 테이블을 제거 - 간단한 작업을 수행합니다. 그것은 IF가 존재하는 추가 옵션이 있습니다. 필요한 테이블이 존재하지 않는 경우, 삭제할 때이 오류를 흡수한다. 사용 예 :

DROP TABLE 종업원 IF가 존재한다.

INDEX를 생성

SQL에서, 데이터에 대한 빠른 액세스를 허용 지수의 시스템이있다. 일반적으로, 특정 열을 가리키는 링크입니다. 간단한 요청을 할 수있는 인덱스를 만듭니다

INDEX의 nazvanie_indeksa을 CREATE

nazvanie_tablitsy ON (nazvanie_stolbtsa)

T-SQL, 오라클, PL SQL 및 기타 여러 해석 기술이 문을 사용합니다.

ALTER 표

다양한 옵션과 높은 기능 연산자. 일반적으로, 변화는 구조 정의 및 할당 테이블을 생성한다. 운영자는 오라클 SQL, 포스트 그레스, 그리고 많은 다른 사람에 사용됩니다.

참고 이제 ALTER 테이블을 사용하여 다양한 옵션이 제공됩니다.

  • ADD. 테이블의 열 첨가를 행한다. 이 그를 구문 : 표가 nazvanie_tablitsy nazvanie_stolbtsa의 tip_hranimyh_dannyh을 ADD 변경합니다. NOT은 열이 이미 만든 경우 오류를 억제하는, 존재하는 경우 매개 변수를 가질 수 있습니다;

  • DROP. 열을 제거합니다. 또한 요청 된 열이 존재하지 않는 없다는 오류를 생성하는, 완료있는 경우;

  • CHANGE. 지정된 필드 이름을 이름을 변경하는 데 사용됩니다. 사용 예제는 : oldname이란의 NEW_NAME nazvanie_tablitsy TABLE 변경을 변경하는 행위

  • 수정합니다. 이 명령은 특정 열 및 추가 속성의 유형을 변경합니다. 그리고는 다음과 같이 사용됩니다 TABLE ALTER nazvanie_tablitsy nazvanie_stolbtsa 데이터 타입 속성을 수정;

VIEW를 만들

SQL에서, 아이디어와 같은 일이있다. 즉, 데이터와 가상 테이블의 일종이다. 그것은 언어 SQL SELECT 문을 사용하여 샘플의 결과로 형성된다. 뷰는 실제 열 이름을 대체하기 위해,이를 숨기기 위해 데이터베이스에 대한 액세스를 제한 할 수 있습니다.

만드는 과정은 간단한 쿼리에 의해 발생합니다

* 테이블 이름에서 AS SELECT VIEW 뷰 이름을 CREATE

샘플링은 전체 전체 데이터베이스로 개최하고, 특정 조건에서 할 수있다.

기능에 대한 약간의

SQL에서 쿼리는 종종 데이터와 상호 작용하고 즉시 변환 할 수 있도록 다양한 내장 함수를 사용합니다. 그들은 구조화 된 언어의 중요한 부분이기 때문에 그것은을 고려 가치가있다.

  • COUNT. 특정 테이블의 행 또는 항목을 계산 생성합니다. 옵션으로, 당신은 그 데이터가 그에게서 이동합니다 열 이름을 지정할 수 있습니다. 직원들의 SELECT COUNT의 *;

  • AVG. 이 기능은 숫자 데이터를 컬럼에 적용됩니다. 이 결과는 모든 값의 산술 평균의 결정이고;

  • MIN과 MAX. 이러한 기능은이 문서에서 사용되어왔다. 그들은 최대 및 상기 컬럼의 최소값을 정의한다;

  • SUM. 그것은 간단 - 함수 열의 값의 합을 산출한다. 그것은 숫자 데이터 형식에만 사용됩니다. DISTINCT 요청 매개 변수를 추가하기 만 고유 값에 추가됩니다;

  • ROUND. 기능 소수 분수를 반올림. 열 이름 및 소수 자리 숫자로 사용되는 구문;

  • LEN. 컬럼의 길이를 계산하는 단순한 기능. 결과는 문자의 수를 보여주는 새로운 테이블이 될 것입니다;

  • NOW. 이 키워드는 현재 날짜와 시간을 계산하는 데 사용됩니다.

추가 운영

SQL 문의 많은 예는 작은 작업을 수행하지만 그럼에도 불구하고 크게 샘플 또는 데이터베이스 활동을 단순화 키워드입니다.

  • AS. 당신이 시각적으로 표를 얻기 위해 지정된 이름을 할당하는 결과를 정렬 할 때 사용됩니다.

  • BETWEEN. 샘플링을위한 매우 편리한 도구. 이는 데이터를 획득 할 필요가 포함 된 값의 범위를 나타낸다. 입력 파라미터로부터 사용되는 숫자 범위로 수신한다.

  • NOT. 오퍼레이터 식의 반대측을 준다.

  • TRUNCATE. 상기베이스 부로부터 데이터를 제거한다. 불가능의 사용 후 데이터를 복구하는 사업자 다릅니다. 그것은 다른 SQL에서 특정 키워드의 구현이 다른 해석 될 수 있음을 주목할 가치가있다. 그래서 당신은 배경 정보를 더 잘 알게 TRUNCATE를 사용하기 전에.

  • LIMIT. 출력 라인의 수를 설정합니다. 운영자의 특색은 항상 마지막에 위치하는 점이다. 그것은 필수 하나 하나 개의 선택 매개 변수를 사용합니다. 첫 번째는 선택한 데이터 많은 행이 표시하는 방법을 나타냅니다. 그리고 두번째 경우, 작업자는 값의 범위를 모두 동작한다.

  • UNION. 매우 사용자 친화적 인 운영자는 여러 쿼리를 결합합니다. 그는 이미이 문서에서이의 예 중에서 만났다. 당신은 UNION은 더 편리하게 사용할 수 있도록 결합, 여러 테이블에서 행을 표시 할 수 있습니다. 이 그를 구문 : imya_drugogo_stolbtsa의 imya_drugoy 테이블에서 테이블 UNION SELECT FROM COLUMN_NAME을 선택합니다. 그 결과는 미국의 요구를 요약 한 테이블입니다.

  • PRIMARY KEY. 로 번역 된 "기본 키." 실제로, 그러한 용어는 참고 자료로 사용된다. 그는 행에 대한 고유 식별자입니다. 그것을 포함 할 필드를 나타 내기 위해 테이블을 만들 때 그것은 규칙으로 사용됩니다.

  • DEFAULT. 그냥 쿼리를 만드는 구현에 사용 된 이전의 연산자로. 그것은 만들 때 필드에 채워집니다 디폴트 값을 정의합니다.

몇 가지 팁 SQL 작업을위한 플랫폼을 개발

  1. NULL. 요청의 준비에 초보자뿐 아니라 프로그래머는 종종 NULL 값의 가용성에 대해 잊지. 결과적으로, 어려운 에러의 크립 코드는 디버그 프로세스를 추적한다. 테이블을 만들 때 따라서, 또는 재 계산 샘플 값은 중지하고 생각해야하고, NULL 발생 여부를 질의 영역에 반영되어 있습니다.

  2. 메모리. 본 논문은 특정 작업을 수행 할 수있는 기능의 수를 나타내었다. 데이터베이스와 작업 할 수있는 쉘의 개발에서는 데이터베이스 시스템에 대한 간단한 표현의 계산을 "능가"할 수 있습니다. 경우에 따라이 성능에 상당한 향상을 제공합니다.

  3. 제한. 당신이 행 두 수천 개의 데이터베이스에서 얻고 싶은 경우에, 그것을 제한하거나 TOP 등의 연산자를 사용하는 것이 필요하다. 필요가 언어 발달의 쉘을 이용하여 데이터를 검색 할 수 없습니다.

  4. 연결합니다. 여러 테이블에서 데이터를 수신하면, 많은 프로그래머는 그들을 함께 감소 기억 수단 봉투 시작합니다. 그런데 왜? 결국, 당신은 모든 존재합니다있는 요청을 할 수 있습니다. 한 번 코드를 작성하고 시스템에 추가 메모리를 예약 할 필요가 없습니다.

  5. 정렬. 이 요청에 규제를 적용 할 수있는 경우, 즉, DBMS의 힘은, 그것을 사용하는 것이 필요하다. 이것은 크게 자원 프로그램이나 서비스에 저장됩니다.

  6. 많은 요청. 당신이 순서의 레코드를 많이 삽입 할 수있는 경우에, 최적화는 패킷 데이터가 하나 개의 요청을 삽입에 대해 생각해야한다. 이것은 또한 전체 시스템의 성능을 향상시킬 것입니다.

  7. 데이터를주의 깊게 배치. 기본 구조를 그리기 전에 방법에 대해 필요한 테이블과 필드의 그런 수 있는지 생각해야합니다. 어쩌면 그들을 결합, 또는 일부를 포기하는 방법이있다. 매우 자주, 프로그래머는 아무데도 결코 사용되지 않는 데이터의 과도한 양을 사용합니다.

  8. 유형. 공간을 절약하고 자원 사용되는 데이터의 종류에 민감해야합니다. 당신은 메모리의 종류에 덜 "무거운"을 이용할 수 있다면, 당신은 그의 이름을 사용해야합니다. 이이 분야에 알려져있다 예를 들어, 수치 값이 255을 초과하지 않는 이유를 4 바이트 INT의 사용, 1 바이트가 TINYINT 경우.

결론

웹 사이트, 웹 서비스, 데스크톱 소프트웨어, 모바일 애플리케이션 - 결론적으로, 언어가 SQL의 지금 거의 모든 곳에서 사용되는 쿼리를 구성되어 있음을 주목해야한다. 따라서, SQL 지식 개발의 모든 분야에 도움이 될 것입니다.

그러나, 모국어 표준의 수정은 때때로 서로 다르다. 예를 들어, PL의 SQL 연산자는 SQL 서버보다 다른 구문을 가질 수있다. 이 기술을 개발을 시작 그래서 전에,이 가이드 라인이 익숙해 질 필요가있다.

는 SQL의 기능과 성능을 능가 할 수있는 미래 대응,에,이 나타나지 않을 수 있습니다, 그래서이 범위는 프로그래머를위한 매우 유망한 틈새 시장이다.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ko.birmiss.com. Theme powered by WordPress.