mysql數據庫技巧

1.日期增加半小時

select startTime,ADDDATE(startTime,interval 30 minute) from tbl_shift_hc;

2.存儲過程

DROP PROCEDURE IF EXISTS `proc_test`;
DELIMITER ;;
CREATE PROCEDURE `proc_test`(IN _occupancy_weekday double,IN _ou varchar(100),IN _bTime Date,In _eTime Date,OUT _time_len NUMERIC(50,10))
    COMMENT '註解'
BEGIN
			DECLARE break_duration NUMERIC(50,10);-- NPT Break Duration字段數據合計
			DECLARE person_num int;-- 總人數
			
      select convert(sum(TIME_TO_SEC(breakDuration)),decimal(50,10))/convert(86400,decimal(50,10)), 
							count(*)
							into break_duration,person_num from tbl_shift_npt where ou=_ou and onlineDate >=_bTime and onlineDate<=_eTime;
			
			
			set _time_len = break_duration;
		END
;;
DELIMITER ;

調用方法

call proc_test(0.98,'US',now(),now(),@time_len);
select @time_len;

說明:

1.參數:IN:輸入參數;OUT:輸出參數。

2.除法要保證精度。convert(0.882222,decimal(50,10))/convert(0.233333333333,decimal(50,10))

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章