计算并显示相同的值但不同的条目

时间:2017-01-09 02:32:27

标签: mysql sql mysqli

基本上这是一个调查系统,我想从我的结果表中计算“是”和“否”

  | q1  | q2  | q3 | q4 | q5 | q6  | q7 | q8  | q9  | q10 |

  | Yes | Yes | No | No | No | Yes | No | Yes | Yes | No  |

  | No | Yes | No | Yes | Yes | Yes | No | No  | Yes | No |

  | Yes | Yes | No | No | No | Yes | No | Yes | Yes | No  |

  | No | Yes | No | Yes | Yes | Yes | No | No  | Yes | No |

例如我希望我的结果是q1 = 2否' s 2是和q2 = 4是0否' s等等 之后,我希望将它显示在一个简单的表格中,但我仍然对查询一无所知

<body>
    <form method="POST">
        <table border="1">
            <tr>
                <th>Answered Yes</th>
                <th>Answered No</th>
            </tr>
            <?php
            include("testdb.php");
            $result= mysqli_query($con, "SELECT * FROM results");
            if($result){
            ?>
        </table>
    </form>
</body>

2 个答案:

答案 0 :(得分:0)

SELECT SUM(q1 = 'Yes') AS q1yes
     , SUM(q1 = 'No') AS q1no
     , SUM(q2 = 'Yes') AS q2yes
     , SUM(q2 = 'No') AS q2no
     ...
  FROM results;

答案 1 :(得分:-1)

MySql查询

SELECT 
(SELECT count(q1) FROM questions WHERE q1 = 'yes') AS q1y,
(SELECT count(q1) FROM questions WHERE q1 = 'no') AS q1n,
(SELECT count(q2) FROM questions WHERE q2 = 'yes') AS q2y,
(SELECT count(q2) FROM questions WHERE q2 = 'no') AS q2n
FROM questions
LIMIT 0,1;

并为您的代码

    <body>

    <form method="POST">


        <table border="1">

                <th>Answered Yes</th>
                <th>Answered No</th>
            </tr>

            <?php
            include("testdb.php");
            $result= mysqli_query($con, "SELECT 
    (SELECT count(q1) FROM questions WHERE q1 = 'yes') AS q1y,
    (SELECT count(q1) FROM questions WHERE q1 = 'no') AS q1n,
    (SELECT count(q2) FROM questions WHERE q2 = 'yes') AS q2y,
    (SELECT count(q2) FROM questions WHERE q2 = 'no') AS q2n
    FROM questions
    LIMIT 0,1;");

            if($result){
$obj = $result->fetch_object();
echo '<tr><td>Question 1 '.$obj->q1y.'Yes</td><td>Question 1 '.$obj->q1n.'No</td></tr>';
echo '<tr><td>Question 2 '.$obj->q2y.'Yes</td><td>Question 2 '.$obj->q2n.'No</td></tr>';    
            ?>


        </table>

    </body>