SQL NULL, DISTINCT, WHERE
Devel/DB_SQL2020. 7. 21. 22:16
반응형
NULL
NULL이란 값이 들어가 있지 않다는 뜻.
반대로 NOT NULL은 비어있으면 안된다. 무조건 채워져 있어야함.
+NULL 값 강제로 지정할때 문법: NVL(컬럼명, 기본값)
EX.
SELECT EMPNO, ENAME, COMM, NVL(COMM, 0) FROM EMP;
NVL2(컬럼명, A,B)= NULL경우 2, 아닌경우 1. 두개중에 골라서 나온다.
EX.
ENAME, COMM, NVL(COMM,0),NVL2(COMM, 1, 2) FROM EMP;
- 두개의 문자를 붙여줄때 (||) ENTER 위에 위치함.
EX.
SELECT ENAME || JOB AS "이름 직업" FROM EMP;
SELECT ENAME || SAL AS "사원 월급" FROM EMP;
**" " = 띄어쓰기 할 때 "" 로 묶어줘야 함.
- 문자값, 날짜값에 ' ' 를 붙인다.
EX.
SELECT ENAME || '의 직급은' || JOB || '이다' AS "사원별 직급" FROM EMP;
SELECT ENAME || '의 직급은' || JOB || '이다' AS "사원별 직급" FROM EMP;
SELECT ENMAE || '의 월급은' || SAL || '이다' AS "사원 월급" FROM EMP;
**주의!!데이터베이스 안에는 ''로 연결.
컬럼의 이름 설정 만 ""로 연결.
중복 행 제거 (DISTINCT)
데이터의 중복 값을 제거해주는 기능이다.
EX.
SELECT DISTINCT JOB FROM EMP;
SELECT DISTINCT CATEGORY FROM TB_DEPARTMENT;
WHERE
WHERE 뒤에는 조건을 기술한다.
EX. 사원 파일에 제임스이름인 사람의 모든 파일을 가져와라.
SELECT * FROM EMP WHERE ENAME = JAMES;
WHY?
컬럼 이름이 잘못됬거나, 문자로 써야 하는데 ' ' 로 안묶어 줬거나.
SELECT * FROM EMP WHERE ENAME = 'JAMES';
+JAMES 문자이기 때문에 ''로 묶어줘야한다. (+날짜인 경우에도 '' 묶어줌)
SELECT DNAME FROM DEPT WHERE LOC = 'DALLAS';
SELECT DNAME FROM DEPT WHERE LOC = 'DALLAS';
+대소문자 다르게 쓸 경우,
SQL문 사용 때는 상관없지만, 자료 검색 할때는 대소문자 정확하게 사용해야한다.
'Devel > DB_SQL' 카테고리의 다른 글
SQL함수 총 정리와 적용예제 (0) | 2020.07.22 |
---|---|
SQL 비교연산자, 부정연산자, 논리연산자, LIKE, ORDER BY (0) | 2020.07.21 |
SQL SELECT 설명 및 예제 (0) | 2020.07.21 |
[Oracle SQL developer] SQL developer 설치 방법 (0) | 2020.07.21 |
[Oracle SQL developer] Oracle 설치방법 (0) | 2020.07.21 |
댓글()