我想做一个投票脚本,人们可以给老师打分,但我有个问题。
我希望剧本只向老师展示你以前没评过的东西,因为一次又一次地给同一个东西打分是没有意义的。
我有两张桌子:
教师与评分
从“teacher”表中,我需要teacherId、teacherName和teacherImage的值
从“rating”表中,我想比较user id的值和登录用户的id(我有一个变量和用户的值)
但为了测试,我只使用id“2”。
完成后,我想让它显示给每个老师,这个用户还没有投票。我试过很多方法,但没有一种能像我想的那样奏效。
我的最新查询是:

SELECT t.teacherId, t.teacherName, t.teacherImage, r.userId, r.teacherId
FROM teacher t, rating r
WHERE r.userId = 2 AND t.teacherId != r.teacherId

如果有人知道我该怎么做,我会很感激的。
提前谢谢。

最佳答案

对于那些没有被特定用户评分的教师,不会有任何评分记录。您可以检索已由用户评分的教师列表,然后使用“不在”。

SELECT teacherId,
       teacherName,
       teacherImage
  FROM teacher
 WHERE teacherId NOT IN (SELECT teacherId
                           FROM rating
                          WHERE userId = 2)

关于mysql - 从其他表中选择列的值不等于另一列的值的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46135749/

10-13 00:57