以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  select over不会用,看不懂啊  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=133435)

--  作者:wohenguaia
--  发布时间:2019/4/13 22:42:00
--  select over不会用,看不懂啊
    \'获取该页数据
        Dim cmd As New SQLCommand
        cmd.ConnectionName = "orders" 
\'
记得设置数据源名称
        cmd.CommandText = 
"Sel ect Count(*) From {
订单}"
        Dim Count As Integer = cmd.ExecuteScalar() 
\'
获取总的行数
       
   cmd.CommandText = "Sel ect * From (Se lec t Row_Number() Over(Order by 产品,客户,日期) As [NO.], 产品客户数量单价数量 * 单价 as 金额,日期 From 订单) As a "
        cmd.CommandText = cmd.CommandText & "  Where [NO.]>= " & StartRow & " And [NO.] <= " & EndRow
     





据此写了如下语句:sel ect 产品ID,客户ID,单价,折扣,数量,日期,sum(数量) over(partition by 产品ID) as 该产品订单总数 from {订单}
报错如下:语法错误 (操作符丢失) 在查询表达式 \'sum(数量) over(partition by 产品ID)\' 中。
请问ft支持此语法吗?如果支持错在哪里呢?谢谢
翻遍了帮助也没找到关于select over的介绍,但是在weui框架,生成汇总模式一节却有使用,难道要系统学习s q l语言?
[此贴子已经被作者于2019/4/13 22:47:15编辑过]

--  作者:chen37280600
--  发布时间:2019/4/14 0:52:00
--  


狐表有个sql制作器,可以很方便生成sql语句的,别整天自己手动写原生的多表分页连接


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看

建议官方把这个用法总结进去帮助文档里,让这个sql构造器发扬光大,很多人都没留意这个东西,还是很痛苦的为bs开发写很复杂的Row_Number() 分页sql!!!
[此贴子已经被作者于2019/4/14 0:57:08编辑过]

--  作者:有点甜
--  发布时间:2019/4/14 10:29:00
--  

1、这个是sqlserver的语法,如果你的数据库是access或者内部数据源,不能用这个方法的

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=125380&replyID=841900&skin=1

 

2、在sql测试窗口测试你的sql语句,看报什么错

 

http://www.foxtable.com/webhelp/scr/1840.htm

 


--  作者:wohenguaia
--  发布时间:2019/4/14 17:07:00
--  
这个好,谢谢
--  作者:wohenguaia
--  发布时间:2019/4/14 17:10:00
--  



--  作者:wohenguaia
--  发布时间:2019/4/14 17:12:00
--  
我的意思是over()怎么用,
--  作者:有点甜
--  发布时间:2019/4/14 17:17:00
--  
以下是引用wohenguaia在2019/4/14 17:12:00的发言:
我的意思是over()怎么用,

 

参考

 

https://www.cnblogs.com/cjm123/p/8033639.html