Oracle 에서 간단 한 조회,한정 조회,데이터 정렬 SQL 문장의 범례 와 상세 한 설명
SQL(Structured Query Language)구조 화 된 조회 언어 는 데이터베이스 조회 와 프로 그래 밍 언어 로 데이터 액세스 및 조회,업데이트 및 관리 관계 데이터 베이스 시스템 에 사용 된다.ANSI(미국 국가 표준 학회)는 SQL 이 데이터베이스 관리 시스템 과 관련 된 표준 언어 라 고 주장 했다.
Oracle 데이터베이스 가 잘 발전 한 이 유 는 Oracle 이 전 세계 에서 최초 로 SQL 문 구 를 사용 한 데이터베이스 제품 이기 때문이다.
SQL 기능 이 강력 합 니 다.요약 하면 다음 과 같은 몇 그룹 으로 나 눌 수 있 습 니 다.
DML(Data Manipulation Language) ,
DDL(Data Definition Language) , , 、
DCL(Data Control Language) ,
간단 한 조 회 는 표 의 모든 데 이 터 를 조회 하 는 것 을 말 합 니 다.간단 한 조회 의 문법 은 다음 과 같 습 니 다.SELECT [DISTINCT] * | [ ] [, [ ]] FROM [ ];
범례:
SELECT * FROM dept;-- dept
SELECT empno, ename, sal FROM emp;-- 、 、
SELECT job FROM emp;-- 。 job 。
SELECT DISTINCT job FROM emp;-- DISTINCT 。 , , 。
SELECT DISTINCT ename, job FROM emp;-- 、
SELECT ename, job, sal*12 FROM emp;-- , 、 、
SELECT ename, job, sal*12 income FROM emp;-- , , , , 。
SELECT ename, job, (sal+300)*12 income FROM emp;-- , 200 100 ,
SELECT ename, job, (sal+300)*12+sal income FROM emp;--
SELECT empno || ',' || ename FROM emp;-- “||” 。
SELECT ' :' || empno || ' :' || ename || ', :' || sal || ', :' || job || '! ' FROM emp;-- :“ :7369 :SMITH, :800, :CLERK!”
","는 원래 출력 된 문자열 에 속 하기 때문에""괄호"를 사용 해 야 합 니 다.즉,SQL 구문 에서"""는 문자열 을 표시 합 니 다.별명 에 있 는 내용 은'괄호'를 사용 하지 말고 SELECT 자구 에 나 오 는 내용 만''를 사용 하 는 것 을 기억 해 야 한다.
2.한정 조회
이전의 간단 한 조회 에서 모든 기록 을 표시 하지만 지금 은 표 시 된 기록 을 걸 러 낼 수 있 는 작업 입 니 다.이것 은 한정 조회 의 작업 에 속 합 니 다.한정 조 회 는 바로 이전 문법 을 바탕 으로 WHERE 자 구 를 추가 하여 한정 조건 을 지정 하 는 데 사 용 됩 니 다.이때 문법 은 다음 과 같 습 니 다.
SELECT [DISTINCT] * | [ ] [, [ ]]
FROM [ ]
[WHERE (S)];
WHERE 자구 이후 여러 조건 을 추가 할 수 있 습 니 다.가장 흔히 볼 수 있 는 조건 은 기본 적 인 관계 연산 입 니 다:>=,<,<=,!=(<>),BETWEEN、AND、LIKE、IN、IS NULL、AND、OR、NOT;1.관계 연산
SELECT * FROM emp WHERE sal>1500;-- 1500
SELECT * FROM emp WHERE job='clerk';--
SELECT * FROM emp WHERE job='CLERK';-- , Oracle ,
SELECT * FROM emp WHERE sal>=1500 AND sal<=3000;-- 1500~3000 , AND OR
SELECT * FROM emp WHERE job='CLERK' OR job='SALESMAN';-- ,
SELECT * FROM emp WHERE (job='CLERK' OR job='SALESMAN') AND sal>1200;-- , , 1200
SELECT * FROM emp WHERE job<>'CLERK';--
SELECT * FROM emp WHERE job!='CLERK';
SELECT * FROM emp WHERE NOT job='CLERK';
2.범위 판단:BETWEEN...AND..."BETWEEN 최소 치 AND 최대 치"는 한 범위 의 판단 과정 을 나타 낸다."BETWEEN...AND..."조작 부 호 는 바늘 만 있 는 것 이 아니 라 날짜 에 도 유용 합 니 다.
SELECT * FROM emp WHERE sal BETWEEN 1500 AND 3000;-- 1500~3000
SELECT * FROM emp WHERE NOT sal BETWEEN 1500 AND 3000;-- BETWEEN…AND…
SELECT * FROM emp WHERE hiredate BETWEEN '01-1 -1981' AND '31-12 -81';--
3.공백 여 부 를 판단:IS(NOT)NULL이 문법 을 사용 하면 특정한 필드 의 내용 이'null'인지 아 닌 지 를 판단 할 수 있 지만 null 과 숫자 0,빈 문자열 은 두 가지 개념 입 니 다.
SELECT * FROM emp WHERE comm IS NOT NULL;--
SELECT * FROM emp WHERE NOT comm IS NULL;
SELECT * FROM emp WHERE comm IS NULL;--
4.지 정 된 범위 의 판단:IN 연산 자IN 연산 자 는 검색 범 위 를 지정 합 니 다.
SELECT * FROM emp WHERE empno=7369 OR empno=7566 OR empno=7799;-- OR 7369、7566、7799
SELECT * FROM emp WHERE empno IN (7369,7566,7799);-- IN 7369、7566、7799
SELECT * FROM emp WHERE empno NOT IN (7369,7566,7799); NOT IN 7369、7566、7799
SELECT * FROM emp WHERE empno IN(7369,7566,null);-- IN , null, ;
SELECT * FROM emp WHERE empno NOT IN(7369,7566,null);-- NOT IN , null 。
5.모호 조회:LIKE 자구LIKE 자구 의 기능 은 모호 한 검색 동작 을 제공 합 니 다.예 를 들 어 일부 프로그램 에 나타 난 검색 동작 은 모두 LIKE 자구 의 실현 에 속 하지만 검색엔진 의 검색 은 LIKE 가 아 닙 니 다.하지만 LIKE 자 구 를 사용 하려 면 일치 하 는 기호 두 개 를 알 아야 합 니 다.
:_; -> 1
:%; -> 0 、1 、
SELECT * FROM emp WHERE ename LIKE 'A%';-- A
SELECT * FROM emp WHERE ename LIKE '_A%';-- A
SELECT * FROM emp WHERE ename LIKE '%A%';-- A
SELECT * FROM emp WHERE ename NOT LIKE '%A%';-- NOT ,
SELECT * FROM emp WHERE ename LIKE '%1%' OR hiredate LIKE '%1%' OR sal LIKE '%1%';-- LIKE , :
개발 과정 에서 데이터베이스 의 모호 한 조 회 는 반드시 LIKE 자 구 를 사용 하지만 LIKE 자 구 를 사용 할 때 가장 큰 주의 점 이 있 습 니 다.모호 한 조회 에 어떠한 조회 키 워드 를 설정 하지 않 으 면('%%')모든 기록 을 조회 하 는 것 을 의미 합 니 다.SELECT * FROM emp WHERE ename LIKE '%%' OR hiredate LIKE '%%' OR sal LIKE '%%';
3.데이터 정렬데이터 가 조회 결 과 를 되 돌려 준 후에 모든 데 이 터 는 기본적으로 직원 번호 에 따라 정렬 됩 니 다.물론 지금 은'ORDER BY'자 구 를 사용 하여 필요 한 정렬 작업 열 을 지정 할 수 있 습 니 다.이때 SQL 문법 은 다음 과 같 습 니 다.
SELECT [DISTINCT] * | [ ] [, [ ]]
FROM [ ]
[WHERE (S)]
[ORDER BY [ASC|DESC] [, [ASC|DESC],…]];
"ORDER BY"자 구 는 모든 SQL 문장의 마지막 내용 이 고 정렬 에 대해 다음 과 같은 몇 가지 설명 이 있 습 니 다.정렬 할 때 여러 정렬 필드 를 지정 할 수 있 습 니 다.
정렬 방식 은 두 가지 가 있 습 니 다.1.오름차 순(ASC):기본 값 이 고 쓰 지 않 아 도 오름차 순 입 니 다.2.내림차 순(DESC):사용 자 는 큰 것 에서 작은 것 으로 정렬 해 야 합 니 다.
SELECT * FROM emp ORDER BY sal;-- ,
SELECT * FROM emp ORDER BY sal ASC;
SELECT * FROM emp ORDER BY sal DESC;--
SELECT * FROM emp ORDER BY sal DESC, hiredate ASC;-- , , ,
정렬 작업 에 있어 서 일반적으로 필요 한 곳 에서 만 사용 되 며,반드시 기억 해 야 할 것 은 ORDER BY 자 구 는 모든 SQL 문장의 마지막 부분 에 쓰 여 있다 는 것 이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Oracle 생성 향후 3일간의 전체 시점 (단계 상세)수요: X 좌표축 시간은 모두 정시 시간으로 앞으로 3일 동안의 예측을 보여준다(x 축은 앞으로 3일 동안의 정시 시간을 보여준다), 3시간마다 한 눈금, 가로 좌표는 모두 24개의 눈금을 보여준다 1단계: 현재 시...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.