以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 统计每个订单号最新日期,而且数量大于50的订单数 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73698) |
|||||||||||||||||||||||||||||||||
-- 作者:阿福 -- 发布时间:2015/8/25 8:52:00 -- 统计每个订单号最新日期,而且数量大于50的订单数 老师请问一下: 有个订单表,我想统计每个订单号最新日期,而且数量大于50的订单数,用select语句怎么写(如下表统计结果为3个)?
Dim mzhy As Integer Dim cmd As New SQLCommand cmd.CommandText = "Select count(*) F rom {订单} Where [数量] > 50 and ,,,,,,,,, " mzhy = cmd.ExecuteScalar()
|
|||||||||||||||||||||||||||||||||
-- 作者:大红袍 -- 发布时间:2015/8/25 9:09:00 -- 参考
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=73686&skin=0
|
|||||||||||||||||||||||||||||||||
-- 作者:阿福 -- 发布时间:2015/8/25 9:42:00 -- 老师请你改一下,不知哪里出错了 select count(*) f rom {订单} as a inner join (select 订单号,数量, max(日期) as 日期 f rom {订单} group by 订单号) as b on a.订单号 = b.订单号 and a.日期 = b.日期 and a.数量 = b.数量 where 数量 > 50
|
|||||||||||||||||||||||||||||||||
-- 作者:大红袍 -- 发布时间:2015/8/25 9:49:00 -- Select count(*) f rom (select * f rom {订单} as a inner join (select 订单号, max(日期) as 日期 f rom {订单} group by 订单号) as b on a.订单号 = b.订单号 and a.日期 = b.日期 where 数量 > 50) as c |
|||||||||||||||||||||||||||||||||
-- 作者:阿福 -- 发布时间:2015/8/25 9:50:00 -- 谢谢红袍老师,我也想到一种方法: select count(*) f rom {订单} as a inner join (select 订单号, max(日期) as 日期 f rom {订单} group by 订单号) as b on a.订单号 = b.订单号 and a.日期 = b.日期 where 数量 > 50
|
|||||||||||||||||||||||||||||||||
-- 作者:阿福 -- 发布时间:2015/8/25 10:57:00 -- 老师在帮我看一下,下面代码哪里出错了? Select * F rom {母猪分娩断奶信息} As a inner join (Select 编号, max(配种日期) As 配种日期 f rom {母猪分娩断奶信息} group by 编号 ) As b on a.编号 = b.编号 And a.配种日期 = b.配种日期 Where [sys_user]= user.Name and [分娩_日期] is null and [状态]=\'存活\' and DateDiff(d, 配种日期, \'8/5/2015\' ) < 3 and DateDiff(d, 配种日期, \'8/12/2015\' ) > 3
|
|||||||||||||||||||||||||||||||||
-- 作者:大红袍 -- 发布时间:2015/8/25 11:00:00 -- Select * F rom {母猪分娩断奶信息} As a inner join (Select 编号, max(配种日期) As 配种日期 f rom {母猪分娩断奶信息} group by 编号 ) As b on a.编号 = b.编号 And a.配种日期 = b.配种日期 Where [sys_user]= \'张三\' and [分娩_日期] is null and [状态]=\'存活\' and DateDiff(d, 配种日期, \'2015-8-5\') < 3 and DateDiff(d, 配种日期, \'2015-8-12\') > 3 |
|||||||||||||||||||||||||||||||||
-- 作者:阿福 -- 发布时间:2015/8/25 11:07:00 -- 老师:编写代码后出现黄色字的错误提示
.NET Framework 版本:2.0.50727.8000 Foxtable 版本:2014.11.11.1 错误所在事件: 详细错误信息: 列名 \'配种日期\' 不明确。 列名 \'配种日期\' 不明确。 但执行下面代码,少了where语句就没有出错 Select * F rom {母猪分娩断奶信息} As a inner join (Select 编号, max(配种日期) As 配种日期 f rom {母猪分娩断奶信息} group by 编号 ) As b on a.编号 = b.编号 And a.配种日期 = b.配种日期 |
|||||||||||||||||||||||||||||||||
-- 作者:大红袍 -- 发布时间:2015/8/25 11:09:00 -- Select * F rom {母猪分娩断奶信息} As a inner join (Select 编号, max(配种日期) As 配种日期 f rom {母猪分娩断奶信息} group by 编号 ) As b on a.编号 = b.编号 And a.配种日期 = b.配种日期 Where [sys_user]= \'开发者\' and [分娩_日期] is null and [状态]=\'存活\' and DateDiff(d, b.配种日期, \'2015-8-5\') < 3 and DateDiff(d, b.配种日期, \'2015-8-12\') > 3
|