1

我正在开发用于多步表单提交的表单生成器。

我有一个步骤表,每个步骤有多个组,每个组有多个问题,最后每个问题都有自己的选项,所有这些都与一个程序有关。

我正在使用 zend 框架进行构建。

我创建了一个 sql 语句以获得完整的结果集,如下所示

$resultSet = $db->fetchAll($db->select()->from(array('rs' => 'registration_steps'))
   ->joinInner(array('rg' => 'registration_groups'), 'rs.id = rg.registration_step_id')
   ->joinInner(array('rq' => 'registration_questions'), 'rq.registration_group = rg.id')
   ->joinInner(array('qo' => 'registration_question_options'), 'rq.id = qo.question_id', array('option_text'))
   ->where('rs.program_id =?', $program_id)); 

问题很明显,我得到了重复的结果,因为我正在使用选项进行内部连接。

虽然如果我在客户端解析整个事情,这可能会起作用,但我想找到一种更优化或更好的方法。

4

0 回答 0