mysql 如何根据用户的组和出席情况显示用户

dsekswqp  于 2023-02-03  发布在  Mysql
关注(0)|答案(1)|浏览(123)

我正在开发一个考勤系统,但我卡住了。我有3个表:* 用户 考勤计划 * 和 * 标记用户 * 具有:* ID 名字 组名 状态 * 等列。* attendence_schedules * 具有:* group_name meeting_date * 等列。此表存储有关即将召开的会议的信息 * 标记 * 具有:* user_id meeting_date status * 等列。这将存储已标记的出席
attendence_schedules. meeting_date**会议当天,我想显示属于同一组的所有用户。但是,当用户被标记时,它应该将按钮更改为已标记(我使用 * marked. status * 检查它是否已标记)
问题是,当用户被标记时,它会显示两次用户-一次用于标记,另一次用于标记。数据库似乎返回相同的用户(标记和未标记)

SELECT u.first_name, m.meeting_date
FROM users AS u
LEFT JOIN marks AS m
ON u.id = m.user_id
WHERE u.status = 1
AND u.meeting_group = 'servicon'

我也试过

SELECT u.first_name, m.meeting_date
FROM users AS u
LEFT JOIN marks AS m
ON u.id = m.user_id
WHERE u.status = 1
AND u.meeting_group = 'servicon'
AND m.meeting_date = '2023-02-01'

我也试着连接三个表,但还是不行

jljoyd4f

jljoyd4f1#

尝试使用"选择不同区域“:

SELECT Distinct u.first_name, m.meeting_date
FROM users AS u
LEFT JOIN marks AS m
ON u.id = m.user_id
WHERE u.status = 1
AND u.meeting_group = 'servicon'

相关问题