728x90

통화이력 산출 SQL


최근 한달동안 통화이력이 없는 전화번호 현황을 출력하고 싶다면 어떻게 해야 할까?


 Oracle

  select 전화번호,날짜,요일

  from 전화번호 not in (

  select distinct 전화번호 from 통화이력 where 날짜 > sysdate -31

  );

 MySQL

  select 전화번호,날짜,요일

  from 전화번호 not in (

  select distinct 전화번호 from 통화이력 where 날짜 > (date_add(now(), interval -31 day)

  );


where 날짜 >= date_add(now(), interval -1 month) -- 한달전
where 날짜 >= date_add(now(), interval -1 day) -- 하루전
where 날짜 >= date_add(now(), interval -1 hour) -- 한시간전
where date_format(D_time,"%Y-%m-%d") = current_date; -- 오늘날짜인 거 가져오기
where D_time > date_sub(now(), interval 1 day); -- 등록된지 24시간이 안된 거



SELECT TO_DAYS('2015-01-20') - TO_DAYS('2014-11-15' ) AS "날짜차이";


SELECT now(), hour(now())as "시간" , minute(now()) as "분", second(now()) as "초", curdate(), curtime();


SELECT WEEKDAY(CURDATE()), WEEKDAY('2015-11-12');

0=월요일,1=화요일,2=수요일,3=목요일,4=금요일,5=토요일,6=일요일을 의미한다.


# 1일 추가하기
SELECT DATE_ADD(NOW(),INTERVAL 1 DAY);

# 한달 더하기
SELECT DATE_ADD(NOW(),INTERVAL 1 MONTH);
 

728x90
블로그 이미지

Link2Me

,