从数据库中选择数字以求和

时间:2012-10-28 13:36:20

标签: php mysql sql

我想从数据库中获取数字并将其用于总和中。我真的不知道如何开始,但我放弃了。当我从数据库直接回复一个数字时,我得到一个错误,这对我的自我蒸汽没有帮助。我不知道我错了什么,但我觉得这很简单。这是代码:

<?php

session_start();

$connection = mysql_connect("mysql15.000webhost.com", "a4987634_quiz", "**********")
or die (mysql_error());

mysql_select_db("a4987634_quiz", $connection)
or die (mysql_error());

$username = $_SESSION['username'];
$password = $_SESSION['password'];

$q1 = mysql_query ("SELECT 'q1' FROM users WHERE username='$username'");
$q2 = mysql_query ("SELECT 'q2' FROM users WHERE username='$username'");
$q3 = mysql_query ("SELECT 'q3' FROM users WHERE username='$username'");
$q4 = mysql_query ("SELECT 'q4' FROM users WHERE username='$username'");
$q5 = mysql_query ("SELECT 'q5' FROM users WHERE username='$username'");

$result = $q1 + $q2 + $q3 + $q4 + $q5 ;

echo $result ;

?>

感谢。

3 个答案:

答案 0 :(得分:3)

假设每个用户名的用户只有一行,那么:

Select q1 + q2 + q3 + q4 + q5 as total from users where username = '$username'

如果有多个,那么你可能想要

Select Sum(q1 + q2 + q3 + q4 + q5) as total from users where username = '$username'

答案 1 :(得分:1)

我认为你可以在这里使用简单的算子 -

SELECT (q1+q2+q3+q4+q5) AS total FROM users WHERE username='$username'

答案 2 :(得分:0)

您无法直接添加结果集,但会从每个结果集中读取特定的字段值 添加从每个结果集中读取的字段值进行求和,然后回显结果。

示例

$result = 0;
$resultSetsArray = array( $q1, $q2, $q3, $q4, $q5 );  

foreach( $resultSetsArray as $rs ) {  
  while( $row = mysql_fetch_array( $rs ) ) {  
    $result = $result + $row[ 1 ];  
    break; // while  
  } // while rs  
} // for each  

echo "result : " . $result;

您有更好的方法来汇总数据库表列的列值 看来你需要在PHP和MySQL中进行更多的学习和练习。