mysql:
select ordersitem.flowerid,flowername,sum(ordersitem.flowernum) as totalnum,orderdate,flowerunit
from flower,ordersitem,orders
where flower.flowerid=ordersitem.flowerid
and orders.id=ordersitem.ordersid
group by flowerid
order by totalnum desc
limit " + (pageNow - 1) * pageSize + "," + pageSize
然后转为我的想法是先将:
select ordersitem.flowerid,flowername,sum(ordersitem.flowernum)
as totalnum,orderdate,flowerunit
from flower,ordersitem,orders
where flower.flowerid=ordersitem.flowerid
and orders.id=ordersitem.ordersid
group by flowerid order by totalnum desc
作为一个结果表,然后对这个结果表进行top操作:
SELECT top 2 * FROM (
select ordersitem.flowerid,flowername,sum(ordersitem.flowernum)
as totalnum,orderdate,flowerunit
from flower,ordersitem,orders
where flower.flowerid=ordersitem.flowerid
and orders.id=ordersitem.ordersid
group by ordersitem.flowerid,flowername,orderdate,flowerunit
)
WHERE ordersitem.flowerid NOT in (
SELECT top 0 flowerid FROM(
select ordersitem.flowerid,flowername,sum(ordersitem.flowernum)
as totalnum,orderdate,flowerunit
from flower,ordersitem,orders
where flower.flowerid=ordersitem.flowerid
and orders.id=ordersitem.ordersid
group by ordersitem.flowerid,flowername,orderdate,flowerunit
)
)
order by totalnum desc
然后就是一直语法错误,于是我就把下面分页的部分去掉了:
SELECT top 2 * FROM (
select ordersitem.flowerid,flowername,sum(ordersitem.flowernum)
as totalnum,orderdate,flowerunit
from flower,ordersitem,orders
where flower.flowerid=ordersitem.flowerid
and orders.id=ordersitem.ordersid
group by ordersitem.flowerid,flowername,orderdate,flowerunit
)
测试了一下这样的写法,还是说语法有错误,不知道错误在哪里....很迷茫,我还要不要继续从事计算机? 手动滑稽, 请大佬帮忙看看....