Vb.net sql server查询到组记录
我想从下表中选择: 可张贴Vb.net sql server查询到组记录,vb.net,sql-server-2008,Vb.net,Sql Server 2008,我想从下表中选择: 可张贴 feed dateinserted count box1 2011-05-28 11:00 1000 box2 box3 box4 box5 box6 前一天的记录总数,其中提要为1、3和5,即。 我需要检索总计的提要将根据我需要的内容进行选择,例如,它可能是第4框和第5框…不是特别的奇数和偶数…我希望这能让它更清楚 我所有记录的内容: select sum(count) as [total] fr
feed dateinserted count
box1 2011-05-28 11:00 1000
box2
box3
box4
box5
box6
前一天的记录总数,其中提要为1、3和5,即。
我需要检索总计的提要将根据我需要的内容进行选择,例如,它可能是第4框和第5框…不是特别的奇数和偶数…我希望这能让它更清楚
我所有记录的内容:
select sum(count) as [total] from PostTable where Cast(dateinserted as DATE) =
CAST(getdate()-1 as DATE)
编辑后,查询将如下所示:
;with temp as(
select ROW_NUMBER() OVER (ORDER BY feed) AS RowNum, * from PostTable)
SELECT SUM(count) AS Total FROM temp WHERE CONVERT(date, dateinserted, 101)=CONVERT(DATE, DATEADD(DAY, -1, GETDATE()), 101) AND RowNum % 2=1
请注意WITH语句开头的分号。查询必须成功运行。对于随机奇数,这可能对您有帮助
SELECT feed, SUM(count) AS total FROM PostTable
WHERE Cast(dateinserted as DATE) = CAST(getdate()-1 as DATE) AND feed IN ('box1', 'box3', 'box4')
GROUP BY feed
id阿略
1.
2.
3.
4.
5.
6.
7.
8.
9
declare @input varchar(10)
set @input = 1
while @input < = 9
begin
select id from emp where id = @input
set @input = @input + 2
end
declare@input varchar(10)
设置@input=1
而@input<=9
开始
从emp中选择id,其中id=@input
设置@input=@input+2
结束
提要编号只是示例data@vbNewb:这是对最后一个WHERE子句执行的MOD。这会让你得到奇数的feed。从你的问题我想你只想看到奇数。。。如果您想看到偶数个提要,请将其替换为提要%2=0否实际提要以字符串形式列出,例如…feeds.cnn.com…我无法列出实际提要,因为您的问题问得不正确。如果提要是字符串,如何确定其中哪一个是1、3和5?一种方法是,如果您不关心它们的顺序,只需根据它们的字母排序顺序获取ROW_NUMBER(),并从中确定奇数行。例如:如果第行(按FeedName排序)%2=1如果我想要框1、框4、框3的合计,请从PostTable中选择SUM(count)作为合计,其中Cast(dateinserted AS DATE)=Cast(getdate()-1 AS DATE)和feed IN('box1','box3','box4')
declare @input varchar(10)
set @input = 1
while @input < = 9
begin
select id from emp where id = @input
set @input = @input + 2
end