为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 8
【操作系统】:linux
【CPU】: 8
【问题描述】*: 有打算做这个优化么?
CREATE TABLE test_main(id int IDENTITY, if_id int, sortId int, primary key (id));
insert into test_main(if_id, sortId)values(2, 1);
insert into test_main(if_id, sortId)values(3, 1);
insert into test_main(if_id, sortId)values(2, 1);
insert into test_main(if_id, sortId)values(4, 1);
insert into test_main(if_id, sortId)values(4, 1);
insert into test_main(if_id, sortId)values(2, 1);
– 正常
select if_id, count(1) as count_t from test_main tm group by if_id having count(1) > 2;
– 错误
select if_id, count(1) as count_t from test_main tm group by if_id having count_t > 2
达梦里面查询常用到的关键词sql执行顺序是这样的
from–where–group by–having–select–order by
很显然select之前都无法使用别名,select之后的order by可以使用别名。
select if_id as ifaad from test_main where ifaad > 1;
感情是不仅仅是count函数,就是正常别名都不能使用