SELECT MAX(PRICE) AS MAX_PRICE
FROM PRODUCT
FROM - PRODUCT 테이블에서
SELECT - 판매 중인 상품 중 가장 높은 판매가를 출력. 컬럼명은 MAX_PRICE로 지정
SELECT MAX(DATETIME) AS 시간
FROM ANIMAL_INS
SELECT DATETIME AS 시간
FROM ANIMAL_INS
ORDER BY DATETIME DESC LIMIT 1
위으 두 SQL구문은 동일한 결과를 표시하지만
MAX()함수를 쓰는 편이 ORDER BY와 LIMIT를 사용하는 것보다
코드의 길이를 줄일 수 있다.
SELECT MIN(DATETIME) AS 시간
FROM ANIMAL_INS
동물 보호소에 가장 먼저 들어온 동물은 언제 들어왔는지 조회
Lv.1 최댓값 구하기 문제와 동일한 문제인데 왜 Lv.2일까
SELECT *
FROM FOOD_PRODUCT
ORDER BY PRICE DESC LIMIT 1
SELECT *
FROM FOOD_PRODUCT
WHERE PRICE = (
SELECT
MAX(PRICE)
FROM FOOD_PRODUCT
)
FROM - FOOD_PRODUCT 테이블에서
WHERE - 가격이 제일 비싼 식품의
SELECT - 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회
SELECT count(*)
FROM ANIMAL_INS
동물 보호소에 동물이 몇 마리 들어왔는지 조회
SELECT COUNT(DISTINCT NAME) AS COUNT
FROM ANIMAL_INS
WHERE NAME <> 'NULL'
SELECT - 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회.
WHERE - 이때 이름이 NULL인 경우는 집계하지 않으며
DISTINCT - 중복되는 이름은 하나로 칩니다.
DISTINCT(
컬럼
) 함수
중복을 제거하는 함수다.
테이블 생성 시 동일한 값이 들어가지 않도록
UNIQUE 제약조건을 설정할 수 있다.Persons테이블에서 ID컬럼에만 설정했을 때
CREATE TABLE Persons ( ID int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int, UNIQUE (ID) );
Persons테이블에서 제한조건에 이름을 붙이고, ID,LastName 등 여러 컬럼에 설정했을 때
CREATE TABLE Persons ( ID int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int, CONSTRAINT UC_Person UNIQUE (ID,LastName) );