【问题标题】:MySQL Query works in PHPMyAdmin but not in PHPMySQL Query 在 PHPMyAdmin 中有效,但在 PHP 中无效
【发布时间】:2012-11-06 19:34:56
【问题描述】:

我一直在尝试从 1000 多行的表中获取第 100 到 200 行的示例。我在网上发现这个 sn-p 似乎在 PHPMyAdmin 中可以完美运行,但是当我尝试在代码中使用它时,它就不起作用了。

    SELECT * 
FROM ( 
    SELECT 
        @row := @row +1 AS rownum, id
    FROM ( 
        SELECT @row :=0) r, myGames
    ) ranked 
WHERE rownum >= 100 AND rownum < 200"

这是我的 PHP 代码

$q = "SELECT * 
FROM ( 
    SELECT 
        @row := @row +1 AS rownum, id
    FROM ( 
        SELECT @row :=0) r, myGames
    ) ranked 
WHERE rownum >= 100 AND rownum < 200";

$query = mysql_query($q);

当我尝试执行 $query = mysql_query($q) 或 die(mysql_error()) 时,我什么也得不到。

非常感谢任何帮助

编辑:通过使用 LIMIT 100,100 解决。谢谢大家

【问题讨论】:

  • 代码中的任何查询都有效吗?
  • $query 是否返回值?尝试var_dump($query) 来检查它是否真的失败了?
  • 为什么不直接使用LIMIT 100,100?这会给你 100-200 的结果范围,没有额外的子查询......
  • mysql_*() 函数将不再使用,并将在未来的版本中删除。请使用 MySQLi 或 PDO。

标签: php mysql phpmyadmin


【解决方案1】:

如果要检索结果集的子集,请使用 limit offset, num_rows

select id
from myGames
limit 100, 100;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多