通过存储过程显示日期
display day through stored procedure
我在 MySQL 存储过程中遇到问题
table tbl_teachers
:
id dat_teacher_doj fk_int_dept_id
1 1982-01-10 1
2 1979-09-01 1
3 1981-10-13 1
这里我需要创建一个存储过程来找出教师的加入日期,如果是星期一,它应该显示星期一,否则它应该显示“工作日”?
我需要这样的答案:
来电检查日期 (1982-01-10)
->天
工作日
您不需要为此使用存储过程。围绕 dayofweek
调用的简单 case
表达式应该可以解决问题:
SELECT id, dat_teacher_doj,
CASE DAYOFWEEK(dat_teacher_doj) WHEN 2 THEN 'Monday' ELSE 'Weekday' END
FROM tbl_teachers
只是 CASE
借助 DAYNAME
的表达式
SELECT id, dat_teacher_doj,
CASE DAYNAME(dat_teacher_doj) WHEN 'Monday' THEN 'Monday' ELSE 'Weekday' END
FROM tbl_teachers
程序:这将适用于 localhost phpmyadmin
以及 workbench
CREATE PROCEDURE `GetWeekDay`(IN `paramDate` DATE)
NO SQL
SELECT CASE DAYNAME(paramDate) WHEN 'Monday' THEN 'Monday' ELSE 'Weekday' END AS 'WkDy'
通话
CALL `GetWeekDay`('2015-08-03');
我在 MySQL 存储过程中遇到问题
table tbl_teachers
:
id dat_teacher_doj fk_int_dept_id
1 1982-01-10 1
2 1979-09-01 1
3 1981-10-13 1
这里我需要创建一个存储过程来找出教师的加入日期,如果是星期一,它应该显示星期一,否则它应该显示“工作日”? 我需要这样的答案:
来电检查日期 (1982-01-10) ->天 工作日
您不需要为此使用存储过程。围绕 dayofweek
调用的简单 case
表达式应该可以解决问题:
SELECT id, dat_teacher_doj,
CASE DAYOFWEEK(dat_teacher_doj) WHEN 2 THEN 'Monday' ELSE 'Weekday' END
FROM tbl_teachers
只是 CASE
借助 DAYNAME
SELECT id, dat_teacher_doj,
CASE DAYNAME(dat_teacher_doj) WHEN 'Monday' THEN 'Monday' ELSE 'Weekday' END
FROM tbl_teachers
程序:这将适用于 localhost phpmyadmin
以及 workbench
CREATE PROCEDURE `GetWeekDay`(IN `paramDate` DATE)
NO SQL
SELECT CASE DAYNAME(paramDate) WHEN 'Monday' THEN 'Monday' ELSE 'Weekday' END AS 'WkDy'
通话
CALL `GetWeekDay`('2015-08-03');