有两种类型的问题1.通道和2.正常问题。 通常在测试中,我想挑选由type_id=0
组成的随机问题,如果type=1
问题来了,下一段应与该问题有关(理解问题应该按顺序出现)。通过使用下面的查询我能够得到的问题
SELECT *
FROM tbl_testquestion
ORDER BY
CASE
WHEN type_id=0 THEN RAND()
WHEN type_id=1 THEN qu_id
END ASC
所有的通道问题来了最后
,我有40个问题极限测试,并在表中我有50通过问题和70个正常问题。
我该如何写一个查询来调用正常的 问题之间的通道问题。
例
1.who是America.?(type_id=0总统)
2.A,B,C是3名学生Aname是 “阿伦” B名称是“Mike”C的名字是“Jhon”(type_id = 1) 谁是C从上面的段落
3.A,B,C是3名学生Aname是“Arun”B名是“Mike”C名是“Jhon”(type_id = 1) 谁是来自以上段落的A
4.Who是Facebook.?(type_id=0的CEO)
形成上述问题,我们将随机挑选如果问题来在rand()
没有问题时问题来了在rand()
下一个问题应该是顺序的。这意味着接下来的问题应该是后通道问题,完成它应该切换回rand()
功能
为什么你需要随机排序?您可以简单地使用ORDER BY qu_id – GrApDev
@Abdul Waheed,您可以对表中的行进行重新排序,例如您需要的并使用ORDER BY qu_id :)但在这种情况下,您需要在表中添加新的列号以及查询看起来是一样的:SELECT * FROM tbl_testquestion WHERE NUMBER_OF_TICKET = RAND()ORDER BY qu_id – GrApDev
如果通过问题由3个问题组成:1)在40个问题限制中,它计为1个问题还是3个问题? 2)如果3个问题的组合在第38个例子中被排序,那么它是否可以被分解并切断三个中的最后一个或者该组应该保持完整? 3)如果团队必须保持,限制将成为41个问题或必须剥离上述正常问题? 4)如果没有正常的问题可以剥离? – MtwStark