以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]筛选逻辑列、控件显示信息问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118156)

--  作者:烟斗木木
--  发布时间:2018/4/26 10:09:00
--  [求助]筛选逻辑列、控件显示信息问题
问题一:创建了一个弹窗,要在窗口筛选出表A的部分数据,满足条件为(同时满足):1.日期小于今天-10天;2.逻辑列1为否或逻辑列2为否


问题二:想用label控件或textbox控件显示表A中日期为当天的行数

--  作者:有点甜
--  发布时间:2018/4/26 11:27:00
--  

1、Tables("表A").Filter = "日期 < #" & Date.Today.AddDays(-10) & "# and (逻辑列1 = false or 逻辑列1 is null or 逻辑列2 = false or 逻辑列2 is null)"

 

2、e.form.controls("Label1").Text = Tables("表A").Compute("count(日期)", "日期 = #" & date.Today & "#")


--  作者:烟斗木木
--  发布时间:2018/5/3 16:10:00
--  
老师,假如是多个汽车的不定期保养系统,怎么样筛选出超过10天未保养的汽车
--  作者:有点甜
--  发布时间:2018/5/3 16:14:00
--  

分组统计获取最后的日期,然后再筛选

 

select 车牌, max(日期) as 最后日期 from {表A} group by 车牌

 

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

 

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

 


--  作者:烟斗木木
--  发布时间:2018/5/4 9:09:00
--  
最后一个问题图片点击可在新窗口打开查看

现在记录表里有四个列,车牌号、日期、保养项目A(逻辑列)、保养项目B(逻辑列)。
要求是每辆车在10天的周期内都完成过项目A和项目B。
如何筛选出不符合条件(超过10天)的车牌号。


--  作者:有点甜
--  发布时间:2018/5/4 9:21:00
--  
select * from {表A} as a inner join (select 车牌, max(日期) as 最后日期 from {表A} where 项目a=false or 项目b=false group by 车牌) as b on a.车牌 = b.车牌 and a.日期 = b.最后日期 where DateDiff(\'d\', 日期, Date()) > 10
--  作者:烟斗木木
--  发布时间:2018/5/4 10:42:00
--  
列名 \'false\' 无效。
列名 \'false\' 无效。


解决了,把False改成0就可以了,虽然不知道为啥
[此贴子已经被作者于2018/5/4 10:50:55编辑过]

--  作者:有点甜
--  发布时间:2018/5/4 11:04:00
--  

之前的sql语句,是对于access的,如果是sqlserver数据库,这样写

 

select * from {表A} as a inner join (select 车牌, max(日期) as 最后日期 from {表A} where 项目a=0 or 项目b=0 group by 车牌) as b on a.车牌 = b.车牌 and a.日期 = b.最后日期 where DateDiff(d, 日期, getDate()) > 10


--  作者:烟斗木木
--  发布时间:2018/5/4 11:06:00
--  
老师,还是没有筛选出来啊,这个表里2253车牌已经最近保养过不会被筛选出来,1123车牌应该被筛选出来。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb


--  作者:有点甜
--  发布时间:2018/5/4 11:10:00
--  
select * from {表A} as a inner join (select 车牌, max(日期) as 最后日期 from {表A} group by 车牌) as b on a.车牌 = b.车牌 and a.日期 = b.最后日期 where DateDiff(\'d\', 日期, Date()) > 10 and (项目a=false or 项目b=false)