【问题标题】:MySQL using JOIN and GROUP_CONCATMySQL 使用 JOIN 和 GROUP_CONCAT
【发布时间】:2012-07-28 02:42:14
【问题描述】:

努力让这个查询工作:

$query_search = "SELECT questionnaires_index.id, questionnaires_index.ea_num, questionnaires_index.address, questionnaires_index.status, questionnaires_index.json_stored users.username FROM questionnaires_index INNER JOIN users ON questionnaires_index.interviewer_id = users.id WHERE questionnaires_index.interviewer_id IN (SELECT GROUP_CONCAT(id) FROM users WHERE supervisor = (SELECT id FROM users WHERE username = '".$username."'))";

收到此错误:

查询错误:。您的 SQL 语法有错误;检查 与您的 MySQL 服务器版本相对应的手册 '.username FROM questions_index INNER JOIN 附近使用的语法 users ON users.id = 第 1 行的问卷调查

查询一直有效,直到我使用 JOIN 语句将 users.username 添加到结果集中。请帮忙。

【问题讨论】:

    标签: mysql inner-join group-concat


    【解决方案1】:

    你漏掉了一个逗号

    $query_search = "选择问卷调查表_index.id、问卷调查表索引.ea_num、问卷调查表索引.地址、问卷调查表索引状态、问卷调查表索引.json_stored、users.username FROM问卷调查表_索引INNER JOIN用户在问卷调查表_index.interviewer_id = users.id WHERE问卷调查表.interviewer_id IN ( SELECT GROUP_CONCAT(id) FROM users WHERE supervisor = (SELECT id FROM users WHERE username = '".$username."'))";

    【讨论】:

    • 天哪。这就是经过数小时努力使此查询正常工作后发生的情况。
    【解决方案2】:

    您似乎忘记在问卷调查表_index.json_stored 和 users.username 之间加逗号。

    $query_search = "SELECT questionnaires_index.id, questionnaires_index.ea_num, questionnaires_index.address, questionnaires_index.status, questionnaires_index.json_stored ,users.username FROM questionnaires_index INNER JOIN users ON questionnaires_index.interviewer_id = users.id WHERE questionnaires_index.interviewer_id IN (SELECT GROUP_CONCAT(id) FROM users WHERE supervisor = (SELECT id FROM users WHERE username = '".$username."'))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-16
      • 2011-08-31
      • 2012-03-08
      • 2018-05-12
      • 2016-03-14
      • 2011-05-26
      • 1970-01-01
      • 2014-02-01
      相关资源
      最近更新 更多