SQL

2022_11_08

0304호 2022. 11. 8. 20:53

1108
sql
sql 파일 저장은 C:\Users\user\Desktop\course\sql로 통일


DML (Data Manipulation Language )
데이터 조회&입력&수정&삭제 4가지가 있음
  Select(조회)를 제일 자주사용함
DDL(Data Definition Language)
 Create/ Alter/ Drop(생성 / 변경 / 제거) 을 제일 자주씀
 Rename/이름변경 /  과 Truncate(구조만 남기고 삭제) 도 있긴함
 DCL ( Data Control Language)
  Database 에 접근하고 객체를 사용할 수 있도록 권한을 주거나 회수함

===============SELECT(DML)

SELECT : 하나 이상의 열을 나열합니다.
- DISTINCT : 중복을 제거합니다.
- * : 모든 열을 선택합니다.
- column : 명명된 열을 선택합니다.
- AS : 열 별칭(alias)을 지정합니다.
- alias : 선택된 열을 다른 이름으로 변경합니다.
- FROM table : 열을 포함하는 테이블을 명시합니다
명령어 별로 줄바꿈을 사용


DataType
숫자 ; 문자 ; 날짜
숫자->오른쪽정렬(엑셀과 비슷함)
문자->왼쪽정렬 (엑셀과비슷함)
날짜->왼쪽정렬

숫자데이터는 연산자를 사용해서 새로운컬럼을 만들어낼 수 있다.

null은 숫자 0이나 공백과는 다름
Database에선 문자열을 ""이 아닌 ''로 표현해줌
오라클에서 문자열을 연결할땐 +가 아닌 ||를 사용해야한다
ex) select first_name ||'' || last_name||'''s salary is $'|| salary
    -> fistaname lastname's salaray is $~~~~~~~;
DISTINCT -> 중복행 제거

========ROWNUM - 데이터 행의 번호를 출력함(중요)(ORACLE에서 자주사용함)

==데이터 제한
WHERE 은 FROM 뒤에 붙음
WHERE 컬럼 = '값' ; 이면 컬럼내 값이 '값'일때만 불러옴
 <>  같지 않다.
 =   같다
-------------------키워드 연산자
ㅁ BETWEEN ~ AND ~ -> ~이상~이하
  ex) WHERE salary BETWEEN 10000 AND 12000;
  10000이상 12000이하의 범위지정
ㅁ IN연산자
  컬럼명 in ( 값, 값, 값)
  괄호안에 있는 값들과 매칭되는 내용들을 모두 출력
ㅁ LIKE연산자
  포함되어있으면 맞다고 판단함
  % ->(Percent) 문자가 없거나 하나 이상
  _ ->(UnderScore) 하나의 문자(찾는 문자열의 위치를 나타내기위해 사용)
    ex) '_A%' ->두번째 문자가 A인 모든 데이터
ㅁ IS NULL & IS NOT NULL
  null은 데이터가 없거나 알수없거나 적용할수 없기에
  =으로는 확인이 불가능함
  IS Null을 사용하거나 IS NOT NULL로 확인을 해야함
ㅁ AND & OR & NOT
  and => AND앞과 뒤가 참인경우에 출력
  or => OR앞이나 뒤 둘중 하나만 참이여도 출력
  AND가 OR보다 연산 우선순위가 빠름
===============데이터 정렬 -> 구문의 마지막에 나옴
ㅁ ORDER BY 연산자
  ASC -> 오름차순정렬(기본값)
  DESC -> 내림차순 정렬
  
정렬을 여러컬럼 기준 정렬하기가 가능함


file:///C:/Users/user/Desktop/%EC%9E%90%EB%B0%94%20%EA%B0%95%EC%9D%98/%EC%98%A4%EB%9D%BC%ED%81%B4%EA%B5%90%EC%95%88/03_%ED%95%A8%EC%88%98.pdf
의 7번째 페이지에 보면 함수가 나와있다.