본문으로 바로가기

MYSQL 문법2

category 데이터베이스/MySQL 2018. 12. 20. 19:12

MYSQL 문법2

 

▶MIN() or MAX() 함수

SELECT MIN(column_name)
FROM table_name
WHERE condition;

최소값인 것을 조회를 하게 됩니다.

 

예를들어서 가격이 제일 낮은 것을 찾고싶다면

 

SELECT MIN(Price) AS SmallestPrice
FROM Products; 처럼 컬럼 이름을 MIN함수에 넣으면 출력됩니다.

 

MAX는 이와 반대입니다..

▶COUNT() AVG() SUM() 함수

COUNT는 기준과 일치하는 행 수

AVG는 숫자 열의 평균값

SUM은 총합을 반환합니다..

 

COUNT () 구문

SELECT COUNT(column_name)
FROM table_name
WHERE condition;

AVG () 구문

SELECT AVG(column_name)
FROM table_name
WHERE condition;

SUM () 구문

SELECT SUM(column_name)
FROM table_name
WHERE condition;

 

처럼 쓰입니다.

즉 위와 마찬가지로 컬럼 이름을 각 함수에 넣으면 되겠죠.

 

나라 수를 찾기 위해서는 COUNT함수를 적용해야합니다.

 

SELECT COUNT(Country)
FROM Countries;

▶LIKE 연산자

LIKE연산자는 WHERE절에서 패턴을 지정합니다.

 

두 개의 wildcard가 있는데

첫 째, % 0,1 or 복수 개의 문자

둘 째, _ 는 한 문자

 

LIKE 구문

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

이런식으로 쓰입니다. LIKE 뒤에 패턴을 적용합니다.

 

LIKE Operator Description
WHERE CustomerName LIKE 'a%' Finds any values that start with "a"
WHERE CustomerName LIKE '%a' Finds any values that end with "a"
WHERE CustomerName LIKE '%or%' Finds any values that have "or" in any position
WHERE CustomerName LIKE '_r%' Finds any values that have "r" in the second position
WHERE CustomerName LIKE 'a_%_%' Finds any values that start with "a" and are at least 3 characters in length
WHERE ContactName LIKE 'a%o' Finds any values that start with "a" and ends with "o"

 

위 표는 LIKE 연산자입니다.

 

즉 a로 시작하는 고객이름을 찾고자 한다면??

SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';

LIKE에 패턴에 a%로 지정합니다. 즉 a로 시작하고 %는 복수 문자를 뜻하므로 a로 시작하는 문자를 뜻합니다.

 

NOT LIKE는 반대입니다.

 

패턴에는 또한 []와이들 카드를 쓸 수 있습니다. 흔히 들 많이 보셨을 겁니다.

[abc]%이면 a 또는 b 또는 c로 시작하는 문자열을 뜻합니다.

 

이는 [a-c]%와 동일합니다.

 

 

▶IN연산자

IN 연산자는 WHERE 절에 여러 값을 지정 가능합니다.

 

즉 OR의 줄인말...

IN 구문

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);

IN()안에 여러 값들 지정합니다.

 

SELECT절과 응용하여 IN안에 SELECT로 조회한 데이터들도 넣을 수 있겠죠 ??

SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT STATEMENT);

▶BETWEEN 연산자

 비트윈 연산자는 주어진 범위 값을 선택합니다.

BETWEEN 구문

SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;

가격이 1~5 사이인 모든 제품을 선택하려면

 

SELECT * FROM Products
WHERE Price BETWEEN 1 AND 5;

숫자 뿐 아니고 문자열도 가능합니다. 문자열은 테이블 내에서 사이에 해당한느 문자열을 출력하겠죠

 

날짜도 지정가능합니다.

SELECT * FROM Orders
WHERE OrderDate BETWEEN '1995-10-07' AND '1996-07-31';

 

▶별칭

별칭은 말그대로 이름을 대신 바꿔서 써줍니다.

 

즉, AS 로 사용하여 뒤에는 별칭을 붙여줍니다.

 

별칭 열 구문

SELECT column_name AS alias_name
FROM table_name;

별칭 테이블 구문

SELECT column_name(s)
FROM table_name AS alias_name;

이렇게 사용하면 해당 별칭으로 나오게 됩니다.

 

다음 포스팅으로 조인에 대해  하겟습니다. 감사합니다.

 

 

'데이터베이스 > MySQL' 카테고리의 다른 글

eXERD 설치  (0) 2018.12.21
MySQL LEFT/RIGHT 조인  (0) 2018.12.21
MYSQL 내부 조인  (0) 2018.12.20
MySQL 문법  (0) 2018.12.20
MySQL 개요  (0) 2018.12.19