2012-10-18 145 views
0

可能重复:
how to select two columns from two tables in mysql如何在mysql中选择两个不同表中的两列

我试图执行这个查询,但我得到不同的输出。我想 从table grading从一个column(grade)和从其他table info选择 column(level)行。

for($i=1; $i<9; $i++) 
{ 
$result = mysql_query("SELECT COUNT(grade),level FROM grading,info WHERE grade = $i"); 
while ($row = mysql_fetch_array($result)) 
{ 

    echo "<tr><td>"; 
    echo $row['level']; 
    echo "</td>"; 
    echo "<td>"; 
    echo $row['COUNT(grade)']; 
    echo "</td></tr>"; 
} 
} 

我的数据库:

 level grade   

     A  1 
     B  2 
     C  6 
     D  3 
     E  4 
     F  5 
     G  6 
     H  8 

我的输出:

 level grade  
     A  8 
     B  8 
     C  8 
     D  8 
     E  8 
     F  16 
     G  0 
     H  8 

但它错了,我想看看有多少学生有品位 1,2,3,4,5,6但输出显示别的东西。

+0

啊,明白了。这是因为你没有正确加入表格...... – ppeterka

+0

你的示例代码不包含任何对'lname'字段的引用。请更新与相关的来源。 – newfurniturey

+1

对不起,我只是更新了我的问题。所以请帮助我。谢谢 –

回答

0

我不知道我知道你想要什么,但如果我在我认为你正在寻找正确的,请尝试:

select grade, count(*) from students group by grade; 

GROUP BY凝结该列到唯一不同的值,并允许您通过计数返回有多少行被“分组”为不同的值。

更多的信息在这里:http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html

相关问题