SQL查询 - 未选择正确的列

时间:2015-11-29 03:13:20

标签: php html mysql sql select

我已经发布了这个,但我想更好地解释一下。我有一个网站,学生为每门课程插入4门课程和4门评论,这些是SQL表格列: Course1,Course2,Course 3,Course 4,Comment1,Comment2,Comment 3,Comment 4。

我有一个搜索,其中任何学生输入,例如,地理(可以保存在四个课程列中的任何一个),我希望我的SQL查询返回所有地理评论。例如,如果学生将地理位置保存在Course2的位置,我希望我的SQL查询选择comment2 where course2 = geography。他可能已经在课程1中保存了它,所以它必须灵活,但只选择学生选择的课程。这是我当前的SQL查询:

$SQL = "SELECT (Comment1 FROM Students WHERE Course1 = 'geography'), (Comment2 FROM Students WHERE Course2 = 'geography'), (Comment3 FROM Students WHERE Course3 = 'geography'),  (Comment4 FROM Students WHERE Course4 = 'geography')";

目前,此SQL查询无效。 我知道结构可能看起来很奇怪,但逻辑上,正如您可能理解的那样,这是有道理的,尽管它可能不是编码它的正确方法。然后我打印所有的地理评论:

$null = '';
if(mysql_num_rows($result)) {
  echo "<ol>";  
 while ($row=mysql_fetch_array($result)) {
  if($row["Class"]!=$null) {  
  if($null!='') {  
  echo "</ol><ol type='1'>";   
  } 
 }

 echo "<li><p>" . " " . $row["Comment1"]. " " . $row["Comment2"]." " .    $row["Comment3"] . " " . $row["Comment4"] . "</li></p>";
$i = $i +1;
}

echo "</ol>";

0 个答案:

没有答案