gpt4 book ai didi

php - AND 条件在 MySQL 查询中不起作用

转载 作者:行者123 更新时间:2023-11-29 14:30:09 25 4
gpt4 key购买 nike

我需要你帮助我的脚本。每当我包括

AND maintable.semester_name = '$semester_name'

在 MySQL 查询中,学期名称的两个值都返回 0,而实际上当处理 echo $nums 时,只有一个值应该为 0。当我删除

AND maintable.semester_name = '$semester_name'

查询给出了我期望的正常结果。

谢谢。

$query = "SELECT *             
FROM maintable
WHERE maintable.matric_no = '$matric_no'
AND maintable.session = '$session'
AND maintable.semester_name = '$semester_name'
AND maintable.level = '$level'";
$result = mysql_query($query);
$nums = mysql_numrows($result);
echo $nums ;

表结构

COURSES
course_id int(100)
course_code varchar(100)
course_title varchar(100)
course_unit int(10)

MAINTABLE
maintable_id int(255)
matric_no int(10)
session varchar(10)
semester_name varchar(10)
course_code varchar(10)
level int(10)
score int(10)
grade varchar(4)

RESULT_UPLOAD
upload_id int(10)
session varchar(10)
semester_name varchar(10)
course_code varchar(10)
level varchar(10)

SEMESTER
semester_id int(10)
semester_name varchar(10)

STUDENT
matric_no int(10)
first_name varchar(100)
last_name varchar(100)
other_name varchar(100)
level int(10)

USERS
users_id int(10)
title varchar(20)
first_name varchar(20)
last_name varchar(20)
username varchar(20)
password varchar(100)
register_date datetime
tmp_name varchar(100)
type varchar(20)
name varchar(20)
size int(10)

YEAR
level_id int(10)
level int(10)

最佳答案

您的查询是正确的,但有些含糊之处。以下查询的运行方式与您完全相同,但字数较少。

$query = "SELECT *             
FROM maintable
WHERE matric_no = '$matric_no'
AND session = '$session'
AND semester_name = '$semester_name'
AND level = '$level'";

现在,关于您的问题,发生这种情况的唯一原因可能是由于没有记录与数据库中的记录匹配。

尝试使用 echo $query 获取您正在运行的查询,并直接从 phpmyadmin 运行该查询,看看您将获得多少个结果集。

关于php - AND 条件在 MySQL 查询中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10160736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com