특정 컬럼만 보고싶은데, 이름을 바꿔서 보고싶어요
select (컬럼명) (바꿔서 볼 이름) from 테이블명
중복되는 내용 넣을 수 있어요?
-> 네. 근데 primary key 로 설정했으면 안됩니다.
내용을 보긴 할건데, 중복 되는 내용은 안보고 싶다
select Distinct 컬럼명 from 테이블명
작성하는데 있어서 대문자 / 소문자는 상관 없다.
/*만약 아래 이름으로 있는 테이블이 이미 있다면 삭제시켜라*/
DROP TABLE STUDENT;
/* STUDENT 테이블 생성*/
CREATE TABLE STUDENT (
STU_ID NUMBER(4) NOT NULL, -- 학생번호, 널 값 허용 안 함
STU_NAME VARCHAR(20) NULL, -- 학생명
AGE NUMBER(4) NULL, -- 나이
STU_EMAIL VARCHAR(20) NULL, -- 이메일
COU_ID NUMBER(4) NULL, -- 소속된 과정의 과정 번호
SEX CHAR(1) DEFAULT 'M', -- 성별
PRIMARY KEY(STU_ID), -- 학생번호를 기본키로 지정
FOREIGN KEY(COU_ID) REFERENCES COURSE(COU_ID) -- 과정 번호를 외래키로 지정
);
--학생 테이블안에 데이터 입력
INSERT INTO STUDENT VALUES(101,'문종헌', 24,'moon@nate.com',10,'M');
INSERT INTO STUDENT VALUES(102,'오한솔', 22,'five@nate.com',20,'M');
INSERT INTO STUDENT VALUES(103,'제용석', 22,'again@nate.com',20,'M');
INSERT INTO STUDENT VALUES(104,'정국철', 22,'cook@nate.com',20,'M');
INSERT INTO STUDENT VALUES(105,'박홍진', 24,'red@nate.com',10,'M');
INSERT INTO STUDENT VALUES(106,'김현우', 21,'kim@nate.com',20,'M');
INSERT INTO STUDENT VALUES(107,'박시준', 22,'season@nate.com',20,'M');
INSERT INTO STUDENT VALUES(108,'김준형', 27,'brother@nate.com',10,'M');
INSERT INTO STUDENT VALUES(109,'문혜진', 22, NULL,20,'F');
INSERT INTO STUDENT VALUES(110,'박기석', 34,'flag@nate.com',10,'M');
INSERT INTO STUDENT VALUES(111,'윤효선', 24,'od@nate.com',30,'F');
INSERT INTO STUDENT VALUES(112,'안창범', 34,'window@nate.com',30,'M');
INSERT INTO STUDENT VALUES(113,'공지훈', 28, NULL, 10,'M');
INSERT INTO STUDENT VALUES(114,'이봉림', 29,'bbong@nate.com',10,'M');
INSERT INTO STUDENT VALUES(115,'안창범', 24,'chang@nate.com',30,'M');
INSERT INTO STUDENT VALUES(116,'장희성', 34,'shine@nate.com',10,'M');
-- 원하는 대로 만들어 졌으면 커밋
commit;
-- 먼저 table 전체 보기로 내용물을 확인해보기
select * from STUDENT;
-- 보고싶은 컬럼만 보려면?
select stu_id, stu_name from student;
-- stu_id는 학번이라는 컬럼명으로
-- stu_name은 이름이라는 컬럼명으로 바꿔서 보겠다면?
select stu_id 학번, stu_name 이름 from student;
-- 중복되는 내용 넣어보기(primary key 만 안건드리면 중복 내용 삽입 가능하다)
Insert into student (stu_id, stu_name) values (117, '장희성');
Insert into student (stu_id, stu_name) values (118, '장희성');
Insert into student (stu_id, stu_name) values (119, '장희성');
-- 확인을 하고 싶은데, 중복 된건 한번만 나오도록 하고싶다
select DISTINCT stu_name from student;
select stu_name from student; -- 전체보기 해서 위와 비교해보기