Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php和mysql将两个字段合并在一起_Php_Mysql - Fatal编程技术网

使用php和mysql将两个字段合并在一起

使用php和mysql将两个字段合并在一起,php,mysql,Php,Mysql,请看下面的代码: $query = " SELECT * FROM Question q INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId JOIN Answer a ON sa.QuestionId = a.QuestionId WHERE ('".mysql_real_escape_string($ses

请看下面的代码:

  $query = "
          SELECT * FROM Question q
            INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId
            JOIN Answer a ON sa.QuestionId = a.QuestionId  
          WHERE
            ('".mysql_real_escape_string($sessionid)."' = '' OR q.SessionId = '".mysql_real_escape_string($sessionid)."')
          AND
            ('".mysql_real_escape_string($questionno)."' = '' OR q.QuestionNo = '".mysql_real_escape_string($questionno)."')
          AND
            ('".mysql_real_escape_string($studentid)."' = '' OR sa.StudentId = '".mysql_real_escape_string($studentid)."')
          AND(CorrectAnswer = '1')
          ORDER BY $orderfield ASC";
while ($row = mysql_fetch_array($result)) {
          echo "
      <tr>
      <td>{$row['SessionId']}</td>
      <td>{$row['QuestionNo']}</td>
      <td>{$row['QuestionContent']}</td>
      <td>{$row['AnswerContent']}</td>
      <td>{$row['StudentAnswer']}</td>
      <td>{$row['Weight%']}</td>
      <td></td>
      <td>{$row['StudentId']}</td>
      </tr>";
        }
      ?>
每一行都是我的数据库表中的一个字段。我感兴趣的有两行,分别是:

<td>{$row['AnswerContent']}</td>
          <td>{$row['StudentAnswer']}</td>
Answercontent行是我在查询的WHERE子句中提到的正确答案的单词answer。但事实上,在数据库表中,AnswerContent字段包含的行中,每个answerid都有单词答案

学生回答是学生选择的答案的id studentanswerid。我想要的是,对于学生回答行,我不希望它显示id号,例如10、5、2,而是我希望通过单词显示学生答案,例如橙色、蓝色、紫色。所以我想知道的是,我如何将答案内容和学生答案合并在一起,这样无论学生答案是什么,它都会以单词形式从“学生答案”字段中显示出来,而不是以id形式

谢谢

不要从表中选择*。只获取你想要的字段。选择所有列会降低可维护性并增加数据库服务器上的负载

如果您不喜欢,您可以在while循环中执行第二个查询,从中获取与StudentAnswer匹配的答案的文本内容。然而,这并不像你对上一个问题的回答那样有效


如果没有任何模式的精确定义,编写针对您的问题的实际查询就有点困难。

可能重复Dub?你已经问过了,并且得到了一个有效的答案。不要重复提问。你没有正确回答,因为你不明白我的意思。我回复问题更好地理解问题不要回复问题-而是编辑原始问题,使其更清晰。表格已连接。答案内容在答题表中,学生答案在学生答案表中。我明白了,我误解了这个问题。