我有以下查询在id
中选择问题ID:
table_question
在我的数据库中,我得到了 133010的客观问题 和 15031个主观问题 。现在,我如何确保我的问题选择的比例
70%的目标问题和30%的问题是结构问题?
答案 0 :(得分:2)
可能工作
试试用括号
(SELECT s.question_id
FROM table_question s
WHERE s.chapter_id = $chapter_id
AND s.publish_status = ".PUBLISHED_ACTIVE." AND (
s.format_type_id = ".QST_TYPE_OBJECTIVE." OR (s.format_type_id = ".QST_TYPE_SHORT_ANSWER." AND s.question_id < 200000 AND s.publish_status = ".PUBLISHED_ACTIVE."))
ORDER BY RAND() LIMIT 3)
UNION
(SELECT s.question_id
FROM table_question s
WHERE s.chapter_id = $chapter_id
AND s.publish_status = ".PUBLISHED_ACTIVE." AND (
s.format_type_id = ".QST_TYPE_SUBJECTIVE." OR (s.format_type_id = ".QST_TYPE_SHORT_ANSWER." AND s.question_id < 200000 AND s.publish_status = ".PUBLISHED_ACTIVE."))
ORDER BY RAND() LIMIT 2)