gpt4 book ai didi

mysql - 显示 31 天的休假状态

转载 作者:行者123 更新时间:2023-11-29 14:34:41 24 4
gpt4 key购买 nike

我有这两个表。

Leave Table

from_date to_date user_id
2011-12-01 2011-12-01 1
2011-12-01 2011-12-07 2
2011-11-02 2011-11-04 3


user table
id name
1 john
2 Caren
3 Sam

现在我需要以这种方式显示输出

NAME     1   2   3   4   5   6   7  ......up to 31 days
john L
Caren L L L L L L L
Sam L L L

那么我们如何为此编写查询呢?

任何建议都会有帮助。

最佳答案

这是给你的;-)

SELECT
u.*,
IF(1 BETWEEN DAYOFMONTH(from_date) AND DAYOFMONTH(to_date), 'L', NULL) '1',
IF(2 BETWEEN DAYOFMONTH(from_date) AND DAYOFMONTH(to_date), 'L', NULL) '2',
IF(3 BETWEEN DAYOFMONTH(from_date) AND DAYOFMONTH(to_date), 'L', NULL) '3',

IF(31 BETWEEN DAYOFMONTH(from_date) AND DAYOFMONTH(to_date), 'L', NULL) '31'
FROM test.user u
JOIN `leave` l
ON u.id = l.user_id

向查询中添加其他字段,并添加 WHERE 过滤器以选择确切的月份。

关于mysql - 显示 31 天的休假状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9324285/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com