文章详情页
MYSQL中如何把SELECT A AS B中的B作为WHERE筛选条件
浏览:217日期: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. javascript - webpack构建工具重构代码的流程是怎么样的?2. java - 安卓调用c++lib3. 如何解决docker宿主机无法访问容器中的服务?4. css3 - 求css页面解决方案5. mysql 5个left关键 然后再用搜索条件 几千条数据就会卡,如何解决呢6. Java中main方法里面的参数一定要是String []args吗?7. javascript - 想做一个canvas的触摸画板,但屏幕会在画的时候滚来滚去,如何阻止?8. HTML5表单必填属性设置自定义验证消息?9. css - 如何讓圖片像雲一樣的行為?10. java - 大家可以分享一下各自如何高效编程吗?就是一些常用的配置及习惯等等
排行榜

网公网安备