【问题标题】:possible syntax error in mysql query?mysql查询中可能的语法错误?
【发布时间】:2012-06-07 22:04:11
【问题描述】:

我对一次调用多个表的查询仍然很陌生,这是我的旧查询字符串,

$sql = "SELECT id,category,title,seo_url,product_line,look_for_terms,image,rating FROM sphinx_index WHERE id IN ($entry_ids) ORDER BY rating DESC";

这是我正在努力工作的新人,

$sql = "SELECT a.id, a.category, a.title, a.seo_url, a.product_line, a.look_for_terms, a.image, a.rating a.status, c.username FROM sphinx_index a, entry b, users c WHERE a.id IN ($entry_ids) AND b.user_id = c.id ORDER BY a.rating DESC";

【问题讨论】:

  • 有什么问题?发生了什么?应该怎么办?
  • 您可能需要使用bc 加入a

标签: php mysql sql syntax


【解决方案1】:

那里没有真正的问题,但如果您想了解 MySQL 对此的看法:执行它并获取错误。

$result = mysql_query($query);

if($result === false)
{
    echo mysql_error();
}

无论如何,下次再具体一点。

【讨论】:

    【解决方案2】:

    在您的 SQL 请求中,表 a 没有与 b 或 c 连接,这看起来很奇怪; 这种连接很少有意义。 例如,您可能会错过 WHERE 中的这个附加子句:

    AND a.id = c.id
    

    但很难猜测您的表在做什么,以及将 a 与其他 2 个表连接起来的正确方法是什么。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-17
      • 2011-03-24
      • 1970-01-01
      • 2016-08-05
      相关资源
      最近更新 更多