SQL

SQL_03

ll-ll 2023. 5. 17. 20:30

중복행 출력 방지

-distinct

ex) 중복되는 학과 번호(deptno)제외 출력

명령문 입력
출력 결과

 

칼럼 별명 부여

1) 칼럼 이름이 길어 한 화면에 칼럼 이름 전체 출력 곤란

2) SQL 함수나 산술연산에 의해 일시적 가상 칼럼 생성되는 경우

-칼럼 이름   별명 (사이에 공백)

-칼럼 이름 As 별명

-칼럼이름 "별명"

ex) 부서 이름 칼럼 별명 dept_name, 부서 칼럼 별명 DN

명령문 입력
출력 결과

ex2) 부서 이름 칼럼 별명 Department name, 부서 번호 칼럼 별명 부서번호#

명령문 입력
출력 결과

 

합성 연산자(||)

하나의 칼럼과 다른 칼럼, 산술표현식, 상수 값과 연결해 하나의 칼럼처럼 출력할 경우

-||      ||

ex) 학번과 이름 칼럼 연결해 Student라는 별명으로 하나의 칼럼처럼 연결

명령문 입력
결과 출력

 

산술 연산자

칼럼 값에 산술 연산자를 적용해 계산된 결과 출력

*산술연산: 숫자 또는 날짜만

ex) 학생 몸무게는 pound로 환산, 칼럼 이름 weight_pound 별명 출력

명령문 입력
결과 출력

 

오류

ORA-00942: 테이블 또는 뷰가 존재하지 않습니다(table or view does not exist)

-원인

1) from절에서 참조한 테이블이나 뷰가 존재X, 사용자가 해당 테이블에 대한 접근 권한 X

2) table 이름을 잘못 입력한 경우

-해결방법

1) from절에서 테이블 이름 정확히 기술

 select*from tab; 명령문으로 확인 가능

2) 데이터베이스 관리자나 소유자로부터 해당 테이블 접근 권한 부여받기

 

-> 이 오류 정말 많이 보는데 정말 대부분 오타였습니다... 눈을 동그랗게 뜨고 찾아도 안 나오길래 잠시 덮어뒀다가 다시 들여다보니까 오타가 보이더라고요...

 

ORA-00904: 열명이 부적합합니다(invalid identidier)

-원인

: select절에서 지정한 칼럼이 from절에서 지정한 테이블에 없는 경우

-해결방법

1) 칼럼 이름 정확히 기술

 desc 테이블명; 으로 조회 가능

 

ORA-00936: 누락된 표현식(missing expression)

-원인

: 콤마(,)를 누락/추가

-해결방법

: 콤마(,) 추가/삭제

 

ORA-00923: FROM 키워드가 있어야 할 곳에 없습니다(FROM keyword not found WHERE expected)

-원인

: from 미입력/잘못 입력

-해결방법

: from 입력/수정