【问题标题】:mysql unknown column in select query as选择查询中的mysql未知列作为
【发布时间】:2014-10-21 09:52:46
【问题描述】:

Mysql在“where子句”中返回未知列“users.status”

    SELECT
    users.firstname,
    users.lastname,
    users.email,
    users.pref
   FROM (
    SELECT
        users.firstname,
        users.lastname,
        users.email,
        CONCAT(
            users.preference, ',',
        ) AS pref
    FROM users
) AS users

  WHERE  users.status = 1
  AND users.active = 1

【问题讨论】:

  • 如果我没看错,这里根本不需要子查询...

标签: mysql database phpmyadmin


【解决方案1】:

子查询不包括status 列。为什么不直接编写不带子查询的查询?

SELECT u.firstname, u.lastname, u.email,
       CONCAT(u.preference, ',') AS pref
FROM users u
WHERE u.status = 1 AND u.active = 1;

CONCAT() 的末尾还有一个额外的逗号(无论如何看起来很奇怪,只有两个参数)。

【讨论】:

    猜你喜欢
    • 2015-09-20
    • 1970-01-01
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-01
    • 2014-03-29
    • 1970-01-01
    相关资源
    最近更新 更多