Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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,可能重复: 我正在尝试执行此查询,但得到了不同的输出。我想要 要从表格放坡中的一个列(放坡)中计算行数,请选择 列(级别)来自其他表信息 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>

可能重复:

我正在尝试执行此查询,但得到了不同的输出。我想要 要从
表格放坡
中的一个
列(放坡
)中计算行数,请选择
列(级别)
来自其他
表信息

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       8
        B       8
        C       8
        D       8
        E       8
        F       16
        G       0
        H       8
但这是错误的,我想数一数有多少学生有成绩
1,2,3,4,5,6
但输出显示其他内容。

我认为,您必须使用JOIN)而不是表1、表2。

我不确定我是否理解您想要的内容,但如果我认为您要查找的内容正确,请尝试:

select grade, count(*) from students group by grade;
groupby
将该列压缩为唯一不同的值,并允许您通过count返回“分组”到该不同值中的行数


更多信息请点击这里:

啊,明白了。这是因为您没有使用表的正确连接…示例代码不包含对
lname
字段的任何引用。请更新相关来源。对不起,伙计们,我刚刚更新了我的问题。所以请帮帮我。谢谢
评分
信息
表的主键是什么?请发布每个表的数据以及它们之间的关系。您没有提供表结构,但假设您有一个成绩表,其中存储了不同类型的成绩,以及存储每个学生成绩的学生成绩。。。选择G.Name,Count(SG.Id)从G年级,StudentGrade SG,其中G.Id=SG.GradeId按G.idb分组,但我想我想计算在年级列中有多少个1,在类似的列中有多少个2。根据我想分配的分数。
select grade, count(*) from students group by grade;