MySQL 쿼리 예약
MySQL의 이벤트 스케줄러 기능을 사용하면 사용자는 지정된 간격으로 작업이 실행되도록 예약할 수 있습니다. 이 기능은 정기적인 데이터 백업이나 정기적인 보고서 생성과 같은 다양한 시나리오에 유용합니다.
사례 연구: 재고 평가
재고 데이터베이스가 있는 경우 과거 날짜에 대한 항목별 평가 보고서를 생성해야 합니다. 현재 주식의 가치를 수동으로 계산할 수 있지만 과거 가치도 추적할 수 있는 방법이 필요합니다.
해결책: 이벤트 스케줄러 사용
쿼리를 예약하려면 평가 데이터를 별도의 테이블에 덤프하는 경우 다음을 따르세요. 단계:
대상 테이블 생성:
CREATE TABLE stock_dumps ( itemcode VARCHAR(255), quantity INT, avgcost DECIMAL(10,2), ttlval DECIMAL(10,2), dump_date DATETIME );
설정 예약:
CREATE EVENT Dumping_event ON SCHEDULE EVERY 1 DAY ON COMPLETION NOT PRESERVE ENABLE DO BEGIN INSERT INTO stock_dumps ( itemcode, quantity, avgcost, ttlval, dump_date ) SELECT itmcode, quantity, avgcost, (avgcost * quantity) AS ttlval, NOW() FROM table_1 JOIN table_2 ON table_1.itmcode = table_2.itmcode; END;
대안: Cron/예약 작업 사용
이벤트 스케줄러를 사용하지 않으려면 다음을 수행하세요. 덤프 쿼리가 포함된 SQL 파일을 실행하는 크론 작업 또는 예약된 작업을 생성합니다.
SQL 파일 만들기:
INSERT INTO stock_dumps ( itemcode, quantity, avgcost, ttlval, dump_date ) SELECT itmcode, quantity, avgcost, (avgcost * quantity) AS ttlval, NOW() FROM table_1 JOIN table_2 ON table_1.itmcode = table_2.itmcode;
작업:
mysql -u [user] -p [password] < /path/to/SQL_file.sql
이 쿼리를 매일 또는 필요한 만큼 자주 예약하면 재고 평가 기록을 유지하고 과거 날짜에 대한 보고서를 생성할 수 있습니다.
위 내용은 MySQL에서 일일 재고 평가 보고서를 어떻게 자동화할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!