文章详情页
MYSQL中如何把SELECT A AS B中的B作为WHERE筛选条件
浏览:133日期:2022-06-18 14:10:06
问题描述
比如SELECT a AS b WHRER b=1;
我这样使用会报错,说b不存在。
问题解答
回答1:因为mysql底层跑SQL语句时:where 后的筛选条件在先, as B的别名在后。所以机器看到where 后的别名是不认的,所以会报说B不存在。
如果非要用B做筛选条件的话:解决方案:外边再嵌套一层。select * from(select A as B from table) t where t.B = XXX -- 任意的筛选条件
如果不嵌套,只能用A做筛选条件了
回答2:当然不存在,这个b只针对与a查询结果的一个别名 select a AS b FROM table where a = 1
回答3:select t.b from(
select a as B from table
) t
where t.b =xxxx
此时的B是可以直接在where中使用的
回答4:b是对查询结果a取的别名where里面肯定是不存在啊
上一条:MySQL 获得执行结果下一条:mysql,in中重复的记录也查出的方法
相关文章:
1. docker - 如何修改运行中容器的配置2. docker容器呢SSH为什么连不通呢?3. Android TextView 或 ListView 加载过渡效果4. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””5. docker start -a dockername 老是卡住,什么情况?6. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?7. python小白基础问题 关于while循环8. python - thrift 返回 TSocket read 0 bytes 求助!!!!9. python - django模板 include模板的数据问题10. Python列表或者字典里面的中文如何处理?
排行榜
