MSSQL

MSSQL - SELECT 조회

깐까망 2024. 3. 13. 08:42
728x90
반응형
SMALL

▶ SELECT 문을 조회

▷기본 문법

 

- SELECT * FROM 테이블 (테이블에 있는 모든 컬럼과 정보를 검색하는 것)

- SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 = '컬럼명에 관한 데이터' (원하는 컬럼명 1개를 검색하고 싶을때)

. WHERE은 조건을 넣는 것이다.

 

예시) 우선 dept, emp 테이블을 만들고

CREATE TABLE dept 
(
deptno INT PRIMARY KEY ,
dname VARCHAR(14),
loc VARCHAR (13)
)

CREATE TABLE EMP (
empno INT NOT NULL,
ename VARCHAR(10),
job VARCHAR(9),
mgr INT,
hiredate DATE,
sal NUMERIC(7,2),
comm NUMERIC(7,2),
deptno INT FOREIGN KEY REFERENCES dept(deptno),  -- 외래키
CONSTRAINT emp_pk PRIMARY KEY (empno)			  -- 기본키
)

 

테이블 안에 데이터가 없으므로 데이터를 넣습니다 .

INSERT INTO dbo.dept(deptno, dname, loc)
VALUES(1,'인사-1',100),
(2,'인사-2',100),
(3,'영업-1',100),
(4,'영업-2',100),
(5,'생산-1',100),
(6,'생산-2',100),
(7,'생산-3',100),
(8,'직급',100),
(9,'공장-1',100),
(10,'공장-2',100),
(11,'공장-3',100),
(12,'교양-1',100),
(13,'고양-2',100),
(14,'고양-3',100)

INSERT INTO 
dbo.EMP(empno, ename,job,mgr,hiredate,sal,comm,deptno) 
VALUES
(110,'김철수','직장인',100,GETDATE(),20000.00,10000.00,1),
(20,'이순신','직장인',101,GETDATE(),10000.00,10000.00,1),
(30,'유관순','직장인',102,GETDATE(),20000.00,10000.00,1),
(40,'계백','직장인',103,GETDATE(),25000.00,10000.00,1),
(50,'한가인','직장인',104,GETDATE(),20500.00,10000.00,1),
(60,'조인성','직장인',105,GETDATE(),30000.00,10000.00,2),
(70,'김재상','직장인',106,GETDATE(),80000.00,10000.00,3),
(80,'이선근','직장인',107,GETDATE(),40000.00,10000.00,3),
(90,'김근호','직장인',108,GETDATE(),10000.00,10000.00,4),
(100,'김나연','직장인',109,GETDATE(),12000.00,10000.00,1)

 

. SELECT * FROM 테이블 방법을 먼저(아래와 같이 검색을 하면)

SELECT * FROM EMP

SELECT * FROM dept

 

테이블에 있는 모든 데이터가 나옵니다.

 

두개의 테이블을 동시에 검색을 하면 각각 테이블에 있는 데이터가 두개의 창에 통하여 데이터가 나옵니다.

 

*(Shift + 8) 에 있는 것은 모든 데이터를 확인을 할 수 있다는 것이다.

 

. SELECT 컬럼명 FROM 테이블 WHERE 컬럼명 = '컬럼명에 관한 데이터'

. EMP 테이블에 모든 컬럼을 검색하되 ename이 '이순신' 것과 dept테이블에 dname이 '인사-1'을 검색을 한다.

 

결과값은?

. 이렇게 조건에 맞는 한개의 데이터가 있어 출력이 됩니다.

- 별칭 (AS)

. SELECT 컬럼명 AS 지정명, ... FROM 테이블명

 위에 같은 형식으로 사용을 한다. 별칭을 사용을 하지 않은 것과 사용한 것 두가지를 보여드리겠습니다.

 

위와 같이 검색을 하게 되면

 

 

. 컬럼명이 정해졌는것이 보여진다.

. 별칭은 테이블이 다양하여 중복된 컬럼이 있게 될 것이다. 그것을 구분을 하기위하여 컬럼명을 지정하여 사용을 하는 것이 좋다 구분을 하여 사용을 하지 않으면 똑같은 컬럼명이 두가지가 있어 검색을 할때 구분이 되지 않아 내가 생각한 컬럼값을 들고가지 못한다.

728x90
반응형
LIST

'MSSQL' 카테고리의 다른 글

MSSQL - DELETE 문  (2) 2024.03.18
MSSQL UPDATE문  (0) 2024.03.16
MSSQL - INSERT 삽입  (0) 2024.03.15
MSSQL - 테이블 컬럼 추가,수정,삭제 하기  (0) 2024.03.12
MSSQL - 테이블 생성, 입력  (0) 2024.03.12