1

我知道这似乎是一个简单的问题,但它的答案已经让我困惑了很长一段时间。我正在尝试使用 WHERE 子句从数据库中返回行数。我的查询如下:

$query = "SELECT COUNT(*) 
          FROM nfl_current_season_games
          WHERE home_team = 'Indianapolis Colts'
          AND away_team = 'Chicago Bears'
          AND week = '1'";

我100%肯定有这样的一行。我正在 phpmyadmin 中查看它。无论我是在 phpmyadmin 中使用纯 SQL 还是在浏览器中通过 php 脚本执行查询,它仍然返回值 0。我尝试将 var_dump 函数用于 php 的 $away_team 和 $home_team 变量,它们都是正好。我不知道从这里去哪里,因为这看起来很奇怪。

有没有人有任何提示或线索?

谢谢,

4

3 回答 3

3

您可能在其中一列中有空格或排序规则问题。

我建议您一次使用一个条件运行查询,并尝试找出导致问题的原因。

当您发现时,将其粘贴到此处,看看我们是否可以提供帮助

编辑:

尝试做类似的事情(不确定mysql语法,但想法是修剪以删除空格并将其发送到上层):

UPPERCASE(TRIM(away_team)) = 'CHICAGO BEARS'
于 2012-10-23T10:31:21.683 回答
0

我终于明白了:

印第安纳波利斯小马队在第一周客场对阵芝加哥熊队。

http://www.colts.com/team/season-schedule.html

有时这不是代码问题!

于 2012-10-23T10:43:13.990 回答
0

“周”列的数据类型是字符串/字符吗?如果不是,则只给出不带引号的值 1,否则(在引号中给出)会将其解释为字符串/字符。试试这个查询:

$query = "选择计数(*)

来自 nfl_current_season_games

WHERE home_team = '印第安纳波利斯小马队'

AND away_team = '芝加哥熊队'

AND 周 = 1 ";

于 2012-10-23T11:09:03.027 回答