我正在使用以下查询来获取有关学生的信息,他们设定的目标,与之相关的标准以及他们目前的等级对于该标准的要求。
每个标准可以有多个等级,我想要最新的等级,所以我添加了一个子查询来获取最新的日期。
当我在XAMPP中测试它但在我的服务器上没有加载时,代码运行良好。数据库是相同的,我不确定还有什么问题。
SELECT users.firstName, goals.goalgrade,
standards.standard, goals.why, grades.grade
FROM users
LEFT JOIN goals ON goals.userid = users.id
LEFT JOIN standards ON standards.id = goals.mid
LEFT JOIN grades ON grades.testId = standards.standard
AND grades.userId = users.id
AND grades.date = (SELECT date FROM grades ORDER BY date DESC LIMIT 1)
WHERE users.teacherId = :teacherId
AND users.block = :block
ORDER BY $sortall
答案 0 :(得分:0)
我解决了这个问题,想到我会分享。使用XAMPP的子查询很好,日期本身就是,但服务器需要我添加我更改的表名:
grades.date = (SELECT date FROM grades ORDER BY date DESC LIMIT 1)
要:
AND grades.date = (SELECT grades.date FROM grades ORDER BY grades.date DESC LIMIT 1)
我的服务器说它正在运行MySQL 5.0,而XAMPP正在运行MySQL 5.1.44。不确定这是否会产生影响但是有效。干杯