在表格中显示选择结果时出现问题

时间:2017-09-05 19:40:58

标签: php mysql

所以,我有一个没有唯一列的sql表。我必须通过它的ID在表格中显示它。但是,就像我说的那样,ID并不是唯一的

OBS¹:请注意,它来自一个选择语句

OBS²:用户ID可以在0到4次的选择中出现(根据id_questionario)

所以,问题是,如何创建一个只显示一次user_id的表,但根据id_questionario显示所有melhor_tentativa的表(注意不显示id_questionario,只有这样我才能以正确的顺序显示melhor_tentativa)

据我所知,我的行应该是列。我已经尝试了2天来弄清楚这一点,但事实证明我做不到。以为可能会错过我如何制作我的sql

这是表格的样子

enter image description here

这是sql表的外观

enter image description here

而下面是我为它制作的代码

<?php
    $count = 0;
    $nota1 = 0;
    $nota2 = 0;
    $nota3 = 0;
    $nota4 = 0;
?>
<?php
    foreach($notas as $nota):
        $total = 0;
?>
        <tr>
          <td><?php echo $nota['user_id']?></td>
          <td>NULL</td>
<?php
        if($nota['id_questionario']==1){
            $nota1 = $nota['melhor_tentativa']*20;
        }
?>
          <td><?php echo $nota1 ?></td>
<?php
        if($nota['id_questionario']==2){
            $nota2 = $nota['melhor_tentativa']*20;
        }
?>
          <td><?php echo $nota2 ?></td>
<?php
    if($nota['id_questionario']==3){
        $nota3 = $nota['melhor_tentativa']*20;
    }
?>
          <td><?php echo $nota3 ?></td>
<?php
    if($nota['id_questionario']==4){
        $nota4 = $nota['melhor_tentativa']*20;
    }
?>
          <td><?php echo $nota4 ?></td>
          <td><?php $total = ($nota1 + $nota2 + $nota3 + $nota4)/4; echo $total; ?></td>
        </tr>
<?php $count++; ?>
<?php
    endforeach;
    echo $count;
?>
      </table>
P.S:我知道总数是完全错误的;)

1 个答案:

答案 0 :(得分:0)

经过一系列的工作,我想出了这个。所以我做的是以下。我有那个表,它会显示一个ID的4个结果。我从这张表中看到了一个视图

然后我从该视图中做了一个子查询,因此我可以在一行中显示所有结果

希望它能在未来帮助任何人:)