ปีงบประมาณ หรือ ปีงบการเงิน (อังกฤษ: fiscal year, financial year หรือ budget year) เป็นช่วงเวลาที่ใช้สำหรับคำนวณงบการเงินประจำปีในธุรกิจและองค์กรอื่น ๆ ในหลายเขตอำนาจตามกฎหมาย กฎข้อบังคับเกี่ยวกับการบัญชีและการเก็บภาษี จะต้องอาศัยรายงานเหล่านี้อย่างน้อยครั้งหนึ่งต่อสิบสองเดือน แต่ไม่จำเป็นว่าช่วงเวลาที่รายงานนี้จะต้องตรงกับปีตามปฏิทิน ซึงปีงบประมาณของไทยเริ่มตั้งแต่เดือนตุลาคมถึงเดือนกันยายนของปีถัดไป
เราสามารถเขียนฟังก์ชั่น (Function) เพื่อคำนวณหาปีงบประมาณจากฐานข้อมูล MySQL ตามนี้
DELIMITER $$
DROP FUNCTION IF EXISTS THGOVYEAR$$
CREATE FUNCTION THGOVYEAR(
xdate DATETIME,
th BIT)
RETURNS INT
DETERMINISTIC
BEGIN
RETURN IF(MONTH(xdate) < 10, YEAR(xdate), YEAR(DATE_ADD(xdate, INTERVAL 1 YEAR))) + (543*th);
END$$
DELIMITER ;
โดยตัวแปรที่รับในฟังก์ชั่นเองจะมี 2 ตัว คือ
- xdate : วันที่ที่ต้องการคำนวณ
- th : ต้องการแสดงผลแบบปี พ.ศ หรือไม่ (1 = ใช่, 0 = ไม่)
ที่นี้มาลองทดสอบดู โดยการสร้างตารางเก็บวันที่กัน
DROP TABLE IF EXISTS DemoDate;
CREATE TABLE DemoDate (
fielddate DATETIME NOT NULL
);
INSERT INTO DemoDate (fielddate) VALUES
('2008-09-01 00:00:00'),
('2008-04-04 00:00:00'),
('2009-05-25 00:00:00'),
('2010-06-30 00:00:00'),
('2011-07-01 00:00:00'),
('2010-10-01 00:00:00'),
('2011-10-01 00:00:00'),
('2012-09-30 00:00:00'),
('2012-10-01 00:00:00'),
('2013-09-30 00:00:00'),
('2012-10-01 00:00:00'),
('2013-09-30 00:00:00'),
('2013-10-01 00:00:00'),
('2014-09-30 00:00:00'),
('2014-10-01 00:00:00'),
('2015-09-30 00:00:00'),
('2015-10-01 00:00:00'),
('2016-09-30 00:00:00'),
('2016-10-01 00:00:00'),
(NOW()),
('0000-00-00 00:00:00');
แล้วก็มาทดสอบกัน

ขอให้มีความสุขกับการทำงานกัน แด่วันแรงานนนนนนน
**ช่วงนี้ไม่ค่อยได้เขียนบล็อคเลย แต่เขียน ๆ หน่อยเหอะ เดือนละเรื่องก็ยังดี T_T …
**งานช่วงนี้เหรอ ถามว่าท้อไหมตอบเลยว่ามากกกกก (แต่ไม่เคยถอยนะ หันหลังแม่มมเลย 555)

