找文章 / 找答案
精选问答 更多内容

[数据处理] 有个sql语法的问题请教一下

阿姆斯特朗炮铂金一 显示全部楼层 发表于 2022-3-7 15:38:52 |阅读模式 打印 上一主题 下一主题
1
已解决
写了一个sql,有个orderby排序,不写top就报错,写了就不报错但是在外面数据库中执行就没问题,请问啥问题?

sql语句
SELECT TOP 100000 a.WarehouseGuid, SUM(a.FinalQuantity) Quantity
FROM dbo.STK_Storage a
LEFT JOIN (SELECT WarehouseGuid, MaterialGuid, COUNT(Guid) RowsCount FROM dbo.STK_Storage WHERE BillTypeCode = 'STK_OutWarehouse' GROUP BY WarehouseGuid, MaterialGuid) d ON a.WarehouseGuid = d.WarehouseGuid AND a.MaterialGuid = d.MaterialGuid
WHERE a.OrderNO2 = '99990101999000010001'
GROUP BY a.WarehouseGuid, a.MaterialGuid, d.RowsCount
ORDER BY d.RowsCount DESC

不加TOP就报错

不加TOP就报错

加上TOP就不报错

加上TOP就不报错

最佳答案

永洪vip
Fiona 关注Ta

2022-03-07 15:38:53

是的,sqlserver里查询是直接将这段sql直接执行了。 但在永洪BI里,加了一层子查询,所以抛错了。见图。这是永洪数据处理的实现导致。建议您去掉最后一句order by:ORDER BY d.RowsCount DESC
查看完整内容
回复

使用道具 举报

精彩评论10

Fiona 显示全部楼层 发表于 2022-3-7 15:38:53
yhdata_S2N0KkXt 发表于 2022-3-8 09:12
sqlserver里查询是没有任何问题的,查过这个问题,是在嵌套查询中有排序的会有这个问题,但是这个语句嵌 ...

是的,sqlserver里查询是直接将这段sql直接执行了。
但在永洪BI里,加了一层子查询,所以抛错了。见图。这是永洪数据处理的实现导致。建议您去掉最后一句order by:ORDER BY d.RowsCount DESC
微信截图_20220308094233.png
回复

使用道具 举报

环环白银三 显示全部楼层 发表于 2022-3-7 15:49:18
同样的sql在数据库是可以用的吗,去掉上方的sql解析器试试呢
回复

使用道具 举报

阿姆斯特朗炮铂金一 显示全部楼层 发表于 2022-3-7 16:19:56
永洪tech-秀秀 发表于 2022-3-7 15:49
同样的sql在数据库是可以用的吗,去掉上方的sql解析器试试呢

同样的sql在数据库中是没有任何问题的,刚试了一下,去掉sql解析器也不行呢
回复

使用道具 举报

环环白银三 显示全部楼层 发表于 2022-3-7 17:02:21
不行就加上top呢,这个报错数据库本身也是存在的,就是加上top就可以
回复

使用道具 举报

阿姆斯特朗炮铂金一 显示全部楼层 发表于 2022-3-7 17:05:04
永洪tech-秀秀 发表于 2022-3-7 17:02
不行就加上top呢,这个报错数据库本身也是存在的,就是加上top就可以

恩,加上可以用,但是这是一个问题,以后审sql得解释
回复

使用道具 举报

环环白银三 显示全部楼层 发表于 2022-3-7 17:20:19
用的什么数据库,数据库和永洪分别是什么版本呢
回复

使用道具 举报

阿姆斯特朗炮铂金一 显示全部楼层 发表于 2022-3-7 17:24:11
永洪tech-秀秀 发表于 2022-3-7 17:20
用的什么数据库,数据库和永洪分别是什么版本呢

数据库用的sqlserver,永洪用的desktop9.4.1
回复

使用道具 举报

Fiona 显示全部楼层 发表于 2022-3-7 20:26:50
yhdata_S2N0KkXt 发表于 2022-3-7 17:05
恩,加上可以用,但是这是一个问题,以后审sql得解释

这是SQLServer自己的语法限制呢,您网上查一下SQL的这个错误
回复

使用道具 举报

阿姆斯特朗炮铂金一 显示全部楼层 发表于 2022-3-8 09:12:19
Fiona 发表于 2022-3-7 20:26
这是SQLServer自己的语法限制呢,您网上查一下SQL的这个错误

sqlserver里查询是没有任何问题的,查过这个问题,是在嵌套查询中有排序的会有这个问题,但是这个语句嵌套查询里是没有排序的
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部