본문 바로가기
DB/SQL 활용

SQL 활용 - SELECT 절 활용법( DISTINCT, 에스터리스크, ALIAS, 산술연산자, 합성연산자)

by 참외롭다 2024. 2. 1.
반응형

SQL 활용 - SELECT 절 활용법( DISTINCT, 에스터리스크, ALIAS, 산술연산자, 합성연산자)

 

SQL의 SELECT 절은 조회할 컬럼을 지정합니다. 옵션으로는 ALL/DISTINCT 가 있습니다. 디폴트옵션은 ALL로 SELECT 절에 옵션을 명시하지 않으면 중복을 제거하지 않습니다.

 

-- ALL : 중복된 데이터가 있어도 모두 출력합니다.
-- DISTINCT : 중복된 데이터가 있을 경우 1건으로 출력합니다.

SELECT [ALL / DISTINCT ] 출력 컬럼명1, 출력 컬럼명2, ...
FROM 테이블명

-- 원하는 칼럼명을 콤마 구분자로 구분해 나열하고, FROM 다음에 해당 칼럼이 존재하는 테이블명을 입력해 실행합니다.
-- 입력한 선수들의 데이터를 조회한다.

SELECT PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO
FROM PLAYER;

 

에스터리스크(*) 사용하기

 

테이블의 모든 컬럼 정보를 조회할 경우 *(에스터리스크)를 사용해 조회합니다.

 

SELECT *
FROM 테이블명

-- 사원 테이블의 정보를 모두 조회한다.
SELECT *
FROM EMP;

 

ALIAS (as) 부여하기

 

조회한 결과에 별명을 부여해 컬럼 레이블을 변경합니다.

 

-- 컬럼명과 ALIAS 사이에 AS, as 키워드를 사용합니다.

SELECT PLAYER_NAME AS 선수명, POSITION AS 위치, HEIGHT AS 키, WEIGHT AS 몸무게
FROM PLAYER;

-- 칼럼 별명에서 AS 를 꼭 사용하지 않아도 됩니다. 하지만 가독성 측면에서 AS를 사용하는 편이 바람직합니다

SELECT PLAYER_NAME 선수명, POSITION 위치, HEIGHT 키, WEIGHT 몸무게
FROM PLAYER;

-- 이중 인용부호("")는 ALIAS가 공백, 특수문자를 포함할 경우와 대소문자 구분이 필요할 때 사용합니다.

SELECT PLAYER_NAME AS "선수 명", POSITION AS 포지션, HEIGHT AS 키, WEIGHT 몸무게
FROM PLAYER;

 

산술 연산자와 합성 연산자

 

 

산술 연산자는 NUMBERDATE 자료형에 적용이 가능하며, 수학의 사칙연산과 동일합니다. 그리고 우선순위 지정을 위한 괄호 사용이 가능합니다. 일반적으로 산산술 연산을 사용하거나 특정 함수를 적용하면 컬럼의 레이블이 길어지고 컬럼에 대한 업무상의 새로운 의미를 부여한 것이므로 적절한 ALIAS를 부여해야합니다.

 

-- () : 연산자 우선순위를 변경하기 위한 괄호
-- * : 곱
-- / : 나누기
-- + : 더하기
-- - : 빼기

SELECT PLAYER_NAME AS 선수명, HEIGHT - WEIGHT AS '키 - 몸무게'
FROM PLAYER;

-- 선수들의 키와 몸무게를 이용해서 BMI 비만지수를 측정합니다

SELECT PLAYER_NAME AS 선수명, ROUND(WEIGHT / (HEIGHT / 100) * (HEIGHT /100), 2) AS BMI
FROM PLAYER;

 

합성 연산자 ( || ) 

 

문자와 문자열을 연결합니다.

 

-- 문자와 문자를 연결하는 경우 2개의 수직 바(||)를 사용한다.
-- CONCAT(string1, string2) 함수를 사용할 수 있습니다.
-- 칼럼과 문자 또는 칼럼과 칼럼과 연결합니다.
-- 문자 표현식의 결과에 의해 새로운 칼럼을 생성합니다..

SELECT PLAYER_NAME || ' 선수 , ' || HEIGHT || 'cm, ' || WEIGHT || ' kg' AS 체격정보
FORM PLAYER;
반응형