SQL Server 2012 T - SQL 기본 튜 토리 얼 (1)

T - SQL 은 표준 SQL 이 SQL Server 데이터베이스 에서 이 루어 집 니 다.
모범
범례 는 표 디자인 시의 기준 으로 보통 하나의 표 는 다음 과 같은 세 가지 범례 를 따라 야 한다. : 데이터베이스 에 있 는 표 의 열 은 원자 여야 하 며 더 이상 분리 할 수 없습니다.예 를 들 어 한 열 에 여러 개의 값 을 저장 하고 한 학생 의 이름과 나 이 는 같은 열 에 저 장 됩 니 다. : 첫 번 째 범례 의 제약 을 계승 하고 이 를 바탕 으로 메 인 키 가 존재 해 야 하 는 유일한 표 지 를 추가 했다. 또한 표 의 다른 열 은 메 인 키 에 의존 해 야 한다 (여러 개의 메 인 키 가 존재 할 때 메 인 키 의 일부분, 즉 그 중의 하나 에 만 의존 해 서 는 안 된다). : 두 번 째 범례 의 제약 을 계승 하고 이 를 바탕 으로 메 인 키 를 제외 한 열 을 추 가 했 기 때문에 다른 열 은 서로 의존 할 수 없다.
데이터베이스 구성 구조
1. 데이터 베 이 스 는 데이터 파일 과 트 랜 잭 션 로그 파일, 데이터 파일 은 주로 대상 의 데 이 터 를 저장 하고 트 랜 잭 션 로그 파일 은 SQL Server 가 유지 해 야 할 정 보 를 저장 합 니 다.2. 데이터 파일 은 병렬 로 쓸 수 있 지만 트 랜 잭 션 로그 파일 은 연속 으로 한 번 에 만 쓸 수 있 습 니 다.그래서 여러 개의 트 랜 잭 션 로그 파일 은 성능 향상 을 가 져 올 수 없습니다.3. 데이터 파일 은 '파일 그룹' 이라는 논리 그룹 에 조직 되 어 저 장 됩 니 다. 하나의 데이터 베 이 스 는 적어도 하나의 PRIMARY 파일 그룹 이 존재 합 니 다. 이 파일 그룹 은 주로 메 인 데이터 베이스 파일 (mdf 파일) 과 데이터 베이스 디 렉 터 리 를 저장 합 니 다. 4. 시스템 내 데이터 베이스 의 용도: master: 인 스 턴 스 범위 의 메타 데이터, 서버 설정 을 저장 합 니 다.실례 에서 모든 데이터베이스 정보 와 초기 화 정보 tampdb: 임시 테이블 과 같은 임시 데 이 터 를 저장 하 는 곳 입 니 다.modeldb: 이 데이터 베 이 스 는 새로운 데이터 베 이 스 를 만 드 는 모델 로 사 용 됩 니 다. 만 든 모든 새 데이터 베 이 스 는 Model 의 사본 에서 초기 화 되 어 만 들 어 졌 습 니 다.msdb: 주로 'SQL Server 에이전트' 서비스 라 는 데 이 터 를 저장 합 니 다.resource: 모든 시스템 대상 의 정 의 를 저장 합 니 다.5. 구조: 제 이 해 는 바로 네 임 스페이스 입 니 다. 관 리 를 편리 하 게 하고 충돌 을 방지 하 며 구조 에 대해 권한 통 제 를 하여 안전성 을 확보 할 수 있 습 니 다.T - SQL 을 쓸 때 대상 에 구조 적 접 두 사 를 붙 이 는 것 을 권장 합 니 다. 시스템 검색 대상 이 있 는 구조 에 소모 되 는 성능 을 줄 일 수 있 습 니 다.
단일 테이블 조회
1. 관계 모델 에 있 는 모든 열 은 이름 이 있어 야 하지만 T - SQL 에 서 는 SELECT 조회 에 열 이 없 는 열 이 나타 날 수 있 습 니 다.2. 별명 을 짓 는 세 가지 방법: 1) 열 명 AS 별명 (건의) 2) 별명 = 열 명 3) 열 명 별명3. SQL Server 는 검색 에서 같은 표현 식 을 한 번 만 계산 할 수 있 습 니 다.4. SELECT 를 사용 하여 조회 할 때 조회 할 열 을 모두 표시 하 는 것 이 좋 습 니 다. 표 의 모든 열 이 필요 하 더 라 도 SELECT * 을 사용 하여 조회 하지 마 십시오. 성능 상 큰 영향 은 없 지만 SELECT * 표 의 를 만 들 때 지정 한 열 순서에 따라 열 번호 위 치 를 저장 하 는 것 이 단점 입 니 다.나중에 표 구 조 를 수정 할 때 프로그램 에서 번호 위치 에 대응 하 는 열 은 당신 이 원 하 는 열 이 아 닐 수도 있 습 니 다. 그러면 잡기 어 려 운 BUG 를 초래 할 수 있 습 니 다.5. SELECT 조회 에서 열 에 있 는 별명 이 현재 표 에 존재 하 는 열 이 라면 이 별명 에 대한 모든 작업 은 별명 필드 를 조작 합 니 다.
--  : A    :firstName,lastName,CreateTime 
  SELECT firstname AS lastname FROM A ORDER BY lastname
--    ,   firstname    

6. SELECT 에서 DISTINCT 를 지정 하면 나중에 사 용 된 ORDER BY 자구 에는 SELECT 에 나타 난 열 만 있 을 뿐 다른 열 은 아니다.그렇지 않 으 면 ORDER BY 는 의미 가 없다.
SELECT DISTINCT country FROM A ORDER BY emplId
--       ,        ,               emplId,     emplId          。

7. 기본 적 인 조회 문 에서 그 논리 적 처리 순 서 는 다음 과 같다.
1) FROM 
2) WHERE 
3) GROUP BY 
4) HAVING 
5) SELECT
   5.1)     
   5.2) DISTINCT
6) ORDER BY
   6.1) TOP/OFFSET-FETCH

8. T - SQL 에 서 는 3 치 논 리 를 사용 합 니 다. TRUE / FALSE / UNKNOWN 은 검색 선별 에 있어 'TRUE 수신', 즉 FALSE 와 UNKNOWN 은 조건 을 만족 시 키 지 못 합 니 다.그러나 CHECK 제약 에 있어 'FALSE 거부' 는 TRUE 와 UNKNOWN 이 조건 을 만족 시 키 는 것 으로 두 개의 NULL 을 UNKNOWN 으로 비교 하고 두 개의 NULL 은 서로 다른 것 으로 여 겨 진다.NULL 값 이 존재 하 는 열 을 정렬 할 때 T - SQL 은 NULL 을 우선 정렬 합 니 다.9. T - SQL 에서 두 개의 조작 수의 유형 이 다 르 면 비교적 낮은 우선 순 위 를 가 진 조작 수 는 먼저 비교적 높 은 우선 순위 의 조작 수 유형 으로 바뀐다.5 / 2.0 첫 번 째 조작 수 는 5 INT 타 입, 두 번 째 조작 수 2.0 NUMERIC 타 입 으로 계산 할 때 5 가 5.0 으로 먼저 전 환 된 후 계산 한 결과 2.5 로 나 타 났 다.데이터 형식의 우선 순위 보기: 데이터 형식의 우선 순위 10. T - SQL 에서 연산 자의 우선 순위 (높 은 것 에서 낮은 것)
1) ()
2) * / % 
3) + - 
4) > < >= <= <> != !> !<
4) NOT
5) AND
6) OR BETWEEN IN LIKE 
7) =(  )

11. SELECT / WHERE / UPDATE 의 목록 에서 표현 식 은 같은 시간 에 계 산 됩 니 다.
SELECT RealAge AS age,age+1 FROM A 
--   age    。      ,age age+1     。

12. Var 요 소 를 포함 한 데이터 형식 은 가 변 적 인 저장 길 이 를 가지 기 때문에 사용 하 는 저장 공간 이 더욱 적 고 읽 기 작업 이 빠르다.그러나 업데이트 작업 은 줄 확장 을 초래 할 수 있 고 데이터 가 현재 페이지 밖으로 이동 하기 때문에 업데이트 효율 이 고정 길이 보다 낮 습 니 다.맥 스 는 기본적으로 8 천 바이트 이 며, 8 천 바이트 가 넘 으 면 대형 대상 으로 줄 의 외부 에 저 장 됩 니 다.

좋은 웹페이지 즐겨찾기