以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 条件设置  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=180680)

--  作者:sanny
--  发布时间:2022/10/14 22:55:00
--  [求助] 条件设置
老师,请问一下,在SQL查询表中,如何显示记录条件 :  SortSep列相同时只取historyId列中数量最大的一条记录,谢谢。


图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2022/10/15 8:52:00
--  
select * from 表A as a inner join (select max(historyId) as historyId from 表A group by SortSep) as b on a.historyId  = b.historyId 
--  作者:sanny
--  发布时间:2022/10/15 12:09:00
--  
老师,因有3个关联数据表,如保把这条件加到以下条件框中,谢谢。


图片点击可在新窗口打开查看此主题相关图片如下:screenshot 2022-10-15 120841.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2022/10/15 12:10:03编辑过]

--  作者:有点蓝
--  发布时间:2022/10/15 14:12:00
--  
这种只能使用纯sql生成查询表

select * from (
select * from 第一个表 as a inner join (select max(historyId) as historyId from 表A group by SortSep) as b on a.historyId  = b.historyId 
) as a inner join 第二表 as b on a.x列=b.x列 inner join 第三表 as c on a.x列=c.x列 

--  作者:sanny
--  发布时间:2022/10/15 19:37:00
--  
老师,那如何用以下来实现,如果这个数据表在foxtable中是表A. SortSep列相同时只取historyId列中数量最大的一条记录.


dim f As New Filler
f
.SourceTable = DataTables("订单"\'指定数据来源
f
.SourceCols = "产品,客户" \'指定数据来源列
f
.DataTable = DataTables("统计"\'指定数据接收表
f
.DataCols = "产品,客户" \'指定数据接收列
f
.Fill() 
\'填充数据

--  作者:有点蓝
--  发布时间:2022/10/16 20:11:00
--  
使用SQLcommand查询后填充,参考:http://www.foxtable.com/webhelp/topics/2137.htm