[ 데이터베이스 ] DML (INSERT, DELETE, SELECT, ALIAS, DUAL)
DML은 주로 WHERE 절을 이용해 대상 행을 선별하여 사용한다.
INSERT
INSERT : 한 번에 테이블 하나에 한 데이터만 입력 가능하다, 두 가지 경우 있음
INSERT INTO 테이블명 (COLUMN_LIST) |
- type A : 칼럼 정의와 동시에 데이터 INSERT, 정의하지 않은 칼럼은 DEFAULT NULL 값 들어간다
INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO) VALUES ('2002007', '박지성', 'K07', 'MF', 178, 73, 7) |
- type B : 칼럼의 순서대로 빠짐없이 데이터가 입력되어야 한다. (리스트 생략 가능, NULL, ' ' 미지의 값 사용 가능)
INSERT INTO PLAYER VALUES ('2002010', '이청용', 'K07', '', 'BLUEDRAGON', '2002', 'MF', '17', NULL , NULL ,'1',180, 69) |
DELETE
DELETE : FROM 생략 가능, 테이블의 데이터 전부를 삭제한다.
DELETE [FROM] 삭제 원하는 테이블명; DELETE FROM PLAYER |
SELECT
SELECT : 특정 칼럼 선택
* (와일드카드 애스터리스크) : 모든 칼럼 정보 출력, 레이블 대문자 표시, 좌측정렬(문자, 날짜), 우측정렬(숫자)
ALL : 중복된 데이터 모두 출력, DEFAULT여서 생략가능
DISTINCT : 중복된 데이터 있는 경우 제외하여 출력
SELECT [ALL/DISTINCT] 보고싶은 칼럼명, 보고싶은 칼럼명 FROM 테이블명; |
SELECT * FROM PLAYER; // 전체 행 선택 SELECT ALL POSITION FROM PLAYER; // 480행 선택 SELECT DISTINCT POSITION FORM PLAYER; // 5행 선택 |
SELECT ALIAS
AS : 칼럼명 뒤에 별명을 부여해 칼럼 레이블을 변경시키기, AS는 생략 가능
SELECT PLAYER_NAME [AS] 선수명, POSITION [AS] 위치, HEIGHT [AS] 키, WEIGHT [AS] 몸무게 FROM PLAYER; |
이중 인용부호 : ALIAS가 공백, 특수문자 포함할 경우, 대소문자 구분하는 경우 사용
SELECT PLAYER_NAME "선수 이름", POSITION "그라운드 포지션", HEIGHT "키", WEIGHT "Weight" FROM PLAYER; |
SELECT 산술 연산자
산술 연산자: NUMBER와 DATE 자료형에 대해 적용된다. (), *, / ,+, - 우선순위 가진다.
SELECT PLAYER_NAME 이름, ROUND(WEIGHT/((HEIGHT/100)* (HEIGHT/100)), 2 ) "BMI 비만지수" FROM PLAYER; |
SELECT 합성 연산자
합성연산자
- ORACLE 문자 연결 : ||
- SQL SERVER 문자 연결 : +
- CONCAT(STR1, STR2) 함수 사용 가능
- 문자 문자연결 , 칼럼과 문자 연결, 칼럼 칼럼 연결 하여 새로운 칼럼 생성
ORACLE
SELECT PLAYER_NAME || '선수, ' || HEIGHT || 'CM, ' || WEIGHT || 'KG' 체격정보 // 박지성선수, 170CM, 65KG 출력 FROM PLAYER; |
SQL SERVER
SELECT PLAYER_NAME + '선수, ' + HEIGHT + 'CM, ' + WEIGHT + 'KG' 체격정보 |
DUAL 테이블
DUAL 테이블 : 사용자 SYS 소유, 모두 액세스 가능, DUMMY 테이블, DUMMY 문자열 유형에 'X'값 들어있는 행
ORACLE : SELECT절과 FROM절이 필수, 사용자 테이블 필요 없어도 필수적으로 필요하다
>> DUAL 테이블 사용
SQL SERVER : SELECT절 필수, 사용자 테이블 칼럼 사용하면 FROM절 필수
'Back-End > SQL 개발자 자격증' 카테고리의 다른 글
[ 데이터베이스 ] FUNCTION - 1 (2) | 2023.10.16 |
---|---|
[ 데이터베이스 ] WHERE, IN, LIKE, IS NULL, ROWNUM, TOP (0) | 2023.10.01 |
[ 데이터베이스 ] ALTER TABLE, TRUNCATE, DROP, DELETE 차이 (0) | 2023.09.28 |
[ 데이터베이스 ] 제약조건, NULL, CTAS (0) | 2023.09.27 |
[ 데이터베이스 ] ERD, 데이터 유형, 테이블 생성규칙 (0) | 2023.09.26 |