【发布时间】:2012-06-02 02:40:16
【问题描述】:
我想使用 php 从 mysql 表中获取数据来计算财政年度。
要求是计算每个财政年度(3 月 31 日至 4 月 1 日)的学生分数。是否可以制作任何每年自行计算这些日期的函数?
我的学生考试成绩表正在存储考试日期(2012 年 9 月 2 日),并且今年(2011 年 9 月 2 日)的同一学生也有旧记录。我只想输出当年的。直到现在我无法得到这个,这是我的代码:-
$result1 = mysql_query(
"SELECT SUM(score), SUM(score_from)
FROM school_test_report, school_students
WHERE (school_test_report.student_id = school_students.student_id and
school_test_report.class=school_students.class)
AND school_test_report.student_id='$id'
AND school_test_report.subject = 'maths'
/* something here to get dates school_test_report.test_date is between 31 march to 1 April */"
)
or die(mysql_error());
$row = mysql_fetch_assoc($result1);
echo $row['SUM(score)'].'/'. $row['SUM(score_from)'];
它给我的不是一个财政年度的所有结果。
【问题讨论】:
-
“测试日期”;它的数据类型是什么?
-
2-sep-2011 这种格式(varchar)(维护旧数据库)
-
您能否包含相关表的简单架构?
-
请停止使用古老的
mysql_*函数编写新代码。它们不再维护,社区已经开始 deprecation process 。相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果您无法决定,this article 将帮助您选择。如果你想学习,here is a good PDO-related tutorial. -
您的财政年度不应该在 4 月 1 日到 3 月 31 日之间吗? 3 月 31 日至 4 月 1 日只有 1 天。