select 명령
- 데이터를 검색하는 명령
(사용형식)
select 컬럼명 [as["]별칭["],]
컬럼명 [as["]별칭,],.....
from 테이블명 [별칭]
where[조건]
[and|or 조건]
[group by 컬럼명[,컬럼명....]]
[having 조건]
[order by 컬럼명|컬럼인덱스[asc|desc],...];
- 별칭: 컬럼이나 체이블에 부여된 또 다른 이름 컬럼에 기술된 별칭은 결과의 제목으로 출력됨
- 컬럼별칭 기술방법: 별칭에 공백과 같은 특수문자가 포함되는경유ㅠ 반드시 "" 로 묶어줘야함
(1)컬럼명 as 별칭
(2)컬럼명 as "별칭"
(3)컬럼명 "별칭"
(4)컬럼명 별칭
- 컬럼명대신 '*'를 사용하면 해당 테이블의 모든 컬럼을 조회
select buyer_id as "거래처코드",
buyer_name as 거래처명,
buyer_lgu "분류 코드",
buyer_add1 as 주소
from buyer
where buyer_add1 like '서울%';
-- select substr(buyer_id,2,5) --select명에서 결과가 도출되어진다.
-- form buyer
-- 자바는 0부터 카운팅 오라클은 1부터 카운팅
-- 오라클주석
한줄주석: --
범위설정: /*~*/
오라클 자료형
-오라클 자료형은 문자열,숫자,날짜,기타 자료형으로 구분
1.문자자료형
- 오라클에서 사용되는 모든 문자열은 ''하나짜리 따옴표로 묶여야합니다.
-문자열과 숫자 자료형이 연산될땨 문자열이 숫자형으로 자동 변환됨
'123'+23=
select '123'+23 from dual; -- 문자 123이 숫자23과 만나서 숫자가 기본형인 오라클에서는 146이 나온다. (자바와 반대)
1)char
-고정길이 문자열을 저장하는 기억장소 정의
-왼쪽부터저장되고 남는 기억공간은 공백이 채워짐
(사용형식)
컬럼명 char(정수[char|byte])
.기본은 byte임 (생략되면)
.char(10) - 10 byte 기억 공간 확보
.char(10 char) -10 글자를 저장할 수 있는 기억 공간 확보
.최대 2000byte까지 저장 가능
.기본키등 같은길이 자료 처리에 사용
예)
create table temp01(
COL1 char(10),
COL2 char(10 char),
COL3 char(10 byte));
insert into temp01(COL1,COL2,COL3)
values('koreaseoul','대한민국서울특별시','대전시')
insert into temp01(COL1,COL2,COL3)
values('korea','대한민국 서울시','중구')
select * from temp01;
select lengthb(COL1),lengthb(COL2),lengthb(COL3)from temp01;
2)varchar2
- 가변길이 문자열을 저장
(사용형식)
컬럼명 varchar2(정수[char|byte])
.4000byte사용가능
.char 옵션을 사용하던라도 전체공간은 4000byte를 초과할수없다
예) create table temp02(
COL1 varchar2(30),
COL2 varchar2(30 char),
COL3 varchar2(30 byte));
insert into temp02(COL1,COL2,COL3)
values('koreaseoul','대한민국서울특별시','대전시')
insert into temp02(COL1,COL2,COL3)
values('korea','대한민국 서울시','중구')
select * from temp02;
select lengthb(COL1),lengthb(COL2),lengthb(COL3)from temp02;
-- 한글은 3byte 영어는1byte
--계산방법
--1.테이블 칸을 우선 지정
--2.언어 지정
--3.바이트수확인
--4.남은 바이트 수 확인
--5.(지정테이블칸-공백칸빼기)
--6.3의 언어바이트갯수에서 5 더하기
**char은 기억공간이 남으면 공백이 삽입되므로 'A','A','A'이 모두 같은값으로 취급
--varchar2는 남는공간을 공백처리하지 않으므로 서로 다른값으로 취급
3)LONG
-가변길이 문자열을 저장
-2GB까지의 자료 저장
-하나의 테이블에 하나의 칼럼만 long타입으로 설정가능
-select문의 select절update문의 set절 insert문의 values절에서만 사용가능
-기능개선 서빈스는 중지
(사용형식)
컬럼명LONG
예) create table temp04(
COL1 LONG,
COL3 varchar2(4000));
insert into temp04
values('koreaseoul','대한민국서울특별시','대전시')
select * from temp04;
4)CLOB,NCLOB
-가변길이 문자열을 저장
-최대 4gb크기까지 저장가능
-long타입을 개선은 자료형
-한 테이블에 복수개의 clob타입컬럼 정의 기능
-일부기능은 DBMS_lob와 같은 특수 API를 사용해야함
-NCLOB는 다국어 언어 지원가능한 포맷으로 저장 (UTF_8,UTF_16)
(사용형식)
컬럼명 clob
예) create table temp05(
COL1 clob,
COL2 clob,
COL3 varchar2(30));
insert into temp05(COL1,COL2,COL3)
values('대한민국은 민주 공화국인다','데이터베이스 SQL과 PL/SQL','ilpostino')
select * from temp05;
select substr(COL1,5,10),DBMS_lob.getlength(COL2)from temp05;
'it공부' 카테고리의 다른 글
연관성 없는 서브쿼리를 사용하는 DML명령 (0) | 2020.07.05 |
---|---|
SQL 단어 개념 정리 (0) | 2020.07.05 |
PL/SQL (0) | 2020.07.05 |
uiux 수업 정리 (0) | 2020.07.05 |
Java 쓰레드 (0) | 2020.07.05 |