php - 从 mysql 中的日期选择年份时的零值

标签 php mysql database

我正在尝试使用 PHP 在 MySQL 中选择年份:

session_start();
$school_id = $_SESSION['school_id'];
$section_id = $_POST['section_id'];
$today  = date("Y");

$select_grades_deped = "SELECT * 
             FROM deped_grade_archive 
             WHERE school_id='$school_id'
             AND section_id='$section_id'
             AND year(submission_date) ='$today' ";

$query_check_grades= mysql_query($select_grades_deped) or die (mysql_error());

$check_count = mysql_num_rows($query_check_grades);

if($check_count == 0){
    $return['checked'] = "0";
}
else{
    $return['checked'] = "1";
}

echo json_encode($return);

但不幸的是,当我尝试以下操作时:

SELECT year( submission_date )
FROM deped_grade_archive
WHERE school_id = '$school_id'
AND section_id = '$section_id'

它从我的表中返回零值。我将submission_date的数据类型更改为date数据类型,因为之前是varchar,但仍然没有用。请大家帮忙。

最佳答案

将其更改为date数据类型时,如果您没有为该列设置默认值(例如CURRENT_TIMESTAMP),则该值将为0000-00-00。因此,YEAR 操作将返回 0,如图所示。

您需要将 submission_date 列更新为您希望为每行指定的时间。

关于php - 从 mysql 中的日期选择年份时的零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14632045/

相关文章:

PHP - HTML 中的输出正确,但浏览器给出 500 内部服务器错误

mysql - 如何从选择中选择最低值

database - CouchDB:良好的文档 ID 可降低存储要求

php - 通过 PHP 在 MySQL 数据库中回显用户

php - 一个 mysql 到 json 数组中的多个值

mysql - 使用像递归函数这样的查询来选择祖先

mysql - Openshift - 无法使用 Java 连接到 mysql

sql-server - 连接字符串中未遵守超时

php - Wordpress 和 AJAX - 上传特色图片

MySQL的where条件只包含对列的引用,这是什么意思?