请问一下,我用的是MSSQL2000或MSSQL2005
我写的是select top 20 convert(varchar,sum(convert(money,amount)),1) as amot from transrecord where transstatus=2 and ddid not in (select top 20 ddid from transrecord where transstatus=2 order by ddid desc)在这边TOP 20不能取作用。请问要怎么样写才能读到第20到40条的和
SELECT convert(varchar,sum(convert(money,b.amount)),1) as amot
FROM(
SELECT TOP 20 * FROM
(SELECT TOP 40 * FROM transrecord where transstatus=2 ) AS a
ORDER BY a.ddid desc)
AS b 这样查询出来为空...
请问要怎么写SQL,谢谢大家帮忙!!
我写的是select top 20 convert(varchar,sum(convert(money,amount)),1) as amot from transrecord where transstatus=2 and ddid not in (select top 20 ddid from transrecord where transstatus=2 order by ddid desc)在这边TOP 20不能取作用。请问要怎么样写才能读到第20到40条的和
SELECT convert(varchar,sum(convert(money,b.amount)),1) as amot
FROM(
SELECT TOP 20 * FROM
(SELECT TOP 40 * FROM transrecord where transstatus=2 ) AS a
ORDER BY a.ddid desc)
AS b 这样查询出来为空...
请问要怎么写SQL,谢谢大家帮忙!!
Select Top M-N * From 表 Where ID in (Select Top M ID From 表) Order by ID Desc
求和就自己写吧
select count/sum 列名 as 新列名 from
(
Select Top M-N * From 表 Where ID in (Select Top M ID From 表) Order by ID Desc
) NewBiao
FROM(
SELECT TOP 20 * FROM
(SELECT TOP 40 * FROM transrecord where transstatus=2 ) AS a
ORDER BY a.ddid desc)
AS b这个思路应该可以的吧,只不过你里面的子查询好像不能查出第20条到第40条吧