- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的数据库中有 3 个表,名为:questions
、answerquestion
、odds
第一个(问题)有一个问题列表
+=========================+
| ID | question |
+=========================+
| 1 | Bla Bla |
| 2 | question |
| 3 | Other Question |
+-------------------------+
第二个(AnswerQuestion)有特定问题的用户答案
+==================================================+
| ID | idQuestion | idOdd | idUser | isCorrect |
+==================================================+
| 1 | 4 | 2 | 5 | 0 |
| 2 | 3 | 1 | 1 | 1 |
| 3 | 1 | 3 | 10 | 0 |
+--------------------------------------------------+
第三个(赔率)有正确赔率的问题
+============================================+
| ID | odd | idQuestion | isCorrect |
+============================================+
| 1 | One | 1 | 0 |
| 2 | Two | 1 | 1 |
| 3 | Three | 1 | 0 |
+--------------------------------------------+
因此,为了获取特定用户的答案,我使用此查询:
SELECT * FROM answerquestion a, question q, odds o
WHERE a.IdUser = :id AND a.IdOdd = o.ID AND a.IdQuestion = q.ID
工作正常,但如果用户的答案为假,我想得到正确的奇数为此,我在 SQL 上使用 IF
语句,查询是:
SET SQL_BIG_SELECTS=1;
SELECT DISTINCT IF(o.isCorrect = 0, o.Corr.TheCorr, o.odd), q.Question
FROM answerquestion a, odds o, question q,
( SELECT o.odd AS TheCorr FROM odds o, question q WHERE o.isCorrect = 1 AND o.IdQuestion = q.ID) AS Corr
WHERE a.IdUser = 5
AND q.ID = a.idQuestion
AND a.IdOdd = o.ID
此查询的问题在于答案是错误的,它给了我所有问题的所有正确答案并重复了问题
示例:
Question ID 4 'Bla Bla' | Correct odd of Question ID 1
Question ID 4 'Bla Bla' | Correct odd of Question ID 2
Question ID 4 'Bla Bla' | Correct odd of Question ID 3
Question ID 4 'Bla Bla' | Correct odd of Question ID 4
Question ID 4 'Bla Bla' | Correct odd of Question ID 5
我想要如果问题 ID 4 的答案,我需要得到它的正确奇数
Question ID 4 'Bla Bla' | Correct odd of Question ID 4
有什么帮助吗?
最佳答案
需要使用正确的 JOIN。不确定应该选择哪些列,但这很容易修复。
SELECT q.id, q.question, o.odd as correct, o2.odd as user_odd
FROM question q
JOIN AnswerQuestion a ON a.idQuestion = q.id
JOIN Odds o ON o.questionID = q.id AND o.isCorrect = 1
JOIN Odds o2 ON o2.id = a.idOdd
WHERE a.idUser = 5
关于mysql - 如果答案为假,请选择正确的奇数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54328665/
我有两个表的一个很常见的情况:下达的“订单”和每个订单的“ItemsBought”: Orders: orderId, orderDate, [...] ItemsBought: boughtId,
我有这个问题: query 1 = SELECT emp.employeId,emp.nom,emp.prenom,msg.note,msg.quelleDate, emp.remarques, em
您好,我有一个显示枚举列表的 WPF 组合框。代码如下。 但是,当加载 View 时,它显示列表中的第一个枚举,但我希望它显示“请选择”,所以是否有 XAML 来执行此操作(如果需要, Vi
假设我们有一个定义了的表: 如果不存在信号,则创建表(严格的整数主键自动递增,名称为TEXT) 该表最初是空的。 我想通过选择获得给定名称的名字,如果名字不存在,则添加它并获得新的自动递增的ID。 我
根据选项卡的数量和屏幕方向,选项卡会彼此相邻显示或显示在下拉列表中。我写了一个函数来设置当前选项卡。这有效但不适用于下拉列表模式。必须做什么? static class TabsListener im
我有以下数据框 id pattern1 pattern2 pattern3 1 a-b-c a-b-- a-b-c 2 a-a-- a-b--
表1 id name 1 john 2 mary 3 bill 4 carrie 表2 id thing 1 ball
在 firefox 中,以下 CSS 仅应用于最后一个 div,因为它是唯一具有两个类的 div: .a.b { color: red; } Stuff A Stuff B Stuff A an
我有一个带有日期列的简单事件表。我可以轻松选择接下来的n个事件(假设n = 3): SELECT * FROM events WHERE `date` > NOW() ORDER BY `date`
我是一名优秀的程序员,十分优秀!