ใช้ตัวแปร User-defined Variable พร้อมคำสั่ง SET เพื่อประกาศตัวแปร DateTime
รูปแบบไวยากรณ์
SET @anyVariableName = 'yourDateTimeValue';
ตัวอย่างการใช้งาน
สร้างตาราง:
mysql> CREATE TABLE datetimeVariables ( Id INT NOT NULL AUTO_INCREMENT, Name VARCHAR(10), ArrivalDatetime DATETIME, PRIMARY KEY(Id) );
เพิ่มข้อมูล:
INSERT INTO datetimeVariables(Name,ArrivalDatetime) VALUES('John','2011-01-31 13:45:20'),('Sam','2012-04-25 15:30:25'),('Larry','2013-10-04 16:40:30'),('Bob','2014-05-15 10:30:25'),('Mike','2017-08-13 11:30:25'),('David','2018-04-25 09:30:25');
ประกาศตัวแปร DateTime:
mysql> SET @greaterThan2011Datetime = '2012-04-25 15:30:25';
ใช้ในคำสั่ง SELECT:
mysql> SELECT * FROM datetimeVariables WHERE ArrivalDatetime >= @greaterThan2011Datetime;
ผลลัพธ์ (ข้อมูลจาก 2012 เป็นต้นไป):
+----+-------+---------------------+ | Id | Name | ArrivalDatetime | +----+-------+---------------------+ | 2 | Sam | 2012-04-25 15:30:25 | | 3 | Larry | 2013-10-04 16:40:30 | | 4 | Bob | 2014-05-15 10:30:25 | | 5 | Mike | 2017-08-13 11:30:25 | | 6 | David | 2018-04-25 09:30:25 | +----+-------+---------------------+ 5 rows in set (0.00 sec)
หมายเหตุ: ใน Stored Procedure ควรใช้ DECLARE สำหรับตัวแปร Local แทน:
DECLARE myDatetime DATETIME DEFAULT '2012-04-25 15:30:25';