zoukankan      html  css  js  c++  java
  • 【mysql错误】用as别名 做where条件,报未知的列 1054

    需求:SELECT a AS b WHRER b=1;    //这样使用会报错,说b不存在。

    因为mysql底层跑SQL语句时:where 后的筛选条件在先, as B的别名在后。所以机器看到where 后的别名是不认的,所以会报说B不存在。

    这个b只是字段a查询结果的一个别名

    如果非要用B做筛选条件的话:解决方案:外边再嵌套一层。
    select * from(

        select A as B from table

    ) t 

    where t.B = XXX -- 任意的筛选条件

    如果不嵌套,只能用A做筛选条件了

  • 相关阅读:
    团队选题与评审
    消息管家
    团队展示
    功能规格说明书
    测试与优化
    git分支管理
    MVC小结
    .Net基础加强
    结对编程
    个人作业1_软件工程
  • 原文地址:https://www.cnblogs.com/zhangzhiping35/p/10980343.html
Copyright © 2011-2022 走看看