출처: https://astrocosmos.tistory.com/202 [ASTROCOSMOS:티스토리] 'date' 태그의 글 목록 :: 하나둘셋넷
728x90

SQL String, Date] 조건별로 분류하여 주문상태 출력하기

728x90
728x90

SQL String, Date] 재구매가 일어난 상품과 회원 리스트 구하기

 

 

-- 코드를 입력하세요
SELECT c.CAR_ID
    FROM CAR_RENTAL_COMPANY_CAR c
    INNER JOIN(
        SELECT CAR_ID, START_DATE
        FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
    ) as h on c.CAR_ID = h.CAR_ID
    WHERE MONTH(h.START_DATE) = 10 AND  c.CAR_TYPE = '세단'
    GROUP BY CAR_ID
    ORDER BY CAR_ID DESC;

 

1] CAR_RENTAL_COMPANY_CARCAR_RENTAL_COMPANY_RENTAL_HISTORY 를 CAR_ID 기준으로 INNER JOIN

 

2] MONTH(h.START_DATE) 을 통해 10월에 대여를 시작한 차의 정보를 얻는다.

3] GROUP BY CAR_ID를 사용하면 문제 조건에 따라 중복없이 값을 출력할 수 있다.

728x90
728x90

SQL 이론 날짜와 시간 관련 함수

 

ADDTIME()

: 지정한 시간 만큼 더해진 날짜와 시간 반환

SELECT ADDTIME('2022-12-25 09:00:00', '35:30:40');

>> 2022-12-26 20:30:40

 

SUBTIME()

: 지정한 시간 만큼 날짜와 시간 반환

 

ADDDATE()

: 지정한 수 만큼 날이 더해진 날짜와 시간 반환

SELECT ADDDATE('2022-12-25 09:00:00', INTERVAL 15 DAY);

>> 2022-01:09 09:00:00

 

SUBDATE()

: 문법은 위와 동일

 

CURDATE()

: 현재 날짜 반환

SELECT CURDATE();

>> 현재 날짜 YYYY-MM-DD

 

CURTIME()

: 현재 시간 반환

SELECT CURTIME()

>> 현재 시간 HH:MM:SS

 

NOW()

: 현재 날짜와 시간 반환

SELECT NOW();

>> YYYY-MM-DD HH:MM:SS

 

SYSDATE()

: 위와 동일

 

QUARTER()

: 지정한 날짜의 분기 반환

SELECT QUARTER(NOW());

 

>> 3

 

월, 일, 시간

SELECT MONTH(NOW());

SELECT DAY(NOW());

SELECT TIME(NOW());

 

DATEDIFF()

: 두 날짜와 시간의 일수 차이 반환

SELECT DATEDIFF('2023-12-25 00:00:00', 'NOW()');

>> 165

 

DAYOFWEEK()

: 지정한 날짜의 요일 반환

SELECT DAYOFWEEK(NOW());

>> (일요일:1 ~ 토요일 :7)

 

DATE_FORMAT()

: 날짜를 지정한 형태의 문자열로 반환

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d')


>> YYYY-MM-DD

SELECTDATE_FORMAT(NOW(), '%Y년%m월%d일')

 

 

728x90

+ Recent posts