gpt4 book ai didi

MYSQL极难Select查询

转载 作者:行者123 更新时间:2023-11-29 23:19:13 25 4
gpt4 key购买 nike

所以我有一个围绕驾驶学校构建的场景,在这个驾驶学校内有工作人员,他们有不同的角色。我正在尝试找到一种方法来检查 future 几天或一周的特定工作人员日程安排。经过一个小时的谷歌搜索 BETWEEN 和 JOIN 的不同变体后,我找不到一个可以让我获得“时间表”的变体。

这是我第一次尝试使用 AND 和 OR 进行过分的操作:

SELECT staff.staff_id, lname, interviewstart, lessondate, lessontime, prac_date, prac_time
FROM staff, interviews, lessons, practicaltests
WHERE staff.staff_id = 6 AND lessondate OR practicaldate OR interviewstart BETWEEN curdate() AND '2014-12-21'
GROUP BY staff_id

类(class)日期和实践日期都是日期格式,面试开始是日期时间(我知道这不会有太大区别,但只是让你知道。)这返回了我见过的最困惑的表格,而且绝对没有得到正确的信息。我期望的结果是这样的:

staff_id    lesson date     practical date  interviewstart
6 2014-12-18
6 2014-12-19
6 2014-12-15 13:00:00

如果这有意义的话,它只会列出一个基本列表。

请有人尝试在这里帮助我,我通常很擅长找到解决问题的方法,但我的 MYSQL 达不到标准! (如果代码显示不正确,也很抱歉,我已经尽力了!)

最佳答案

您错误地使用了 OR 运算符。试试这个:

SELECT staff.staff_id, lname, interviewstart, lessondate, lessontime, prac_date, prac_time
FROM staff, interviews, lessons, practicaltests
WHERE staff.staff_id = 6 AND (lessondate BETWEEN curdate() AND '2014-12-21' OR practicaldate BETWEEN curdate() AND '2014-12-21' OR interviewstart BETWEEN curdate() AND '2014-12-21') GROUP BY staff_id

关于MYSQL极难Select查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27472439/

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