2011-03-17 1 views
0

の最後に列の合計を取得それに似たこの車両の運賃どのようにやあ私は、列の<strong>合計は、以下の列の最後に総料理と総手数料として</strong>と<strong>s.commission</strong>をs.fareたい、今のデータベースからこれを選択するテーブル

SELECT s.fare, s.commission, o.driver, s._date, v.vehiclenumber, p.productname, 
     s.source, s.destination, rs.routename, rd.routename, o.ownername 
FROM route AS rs, route AS rd, shipment AS s, product AS p, vehicle AS v, 
     owner AS o 
    WHERE s.vehicle = v.vehicleid 
    AND s.source = rs.routeid 
    AND v.owner = o.ownerid 
    AND s.destination = rd.routeid 
    AND s.product = p.productid 
    AND v.vehiclenumber = 'nk-234' 
    ORDER BY _date 
    LIMIT 0 , 30 

答えて

0

使用工事(だけではなく、価格の必要な列を追加します)最後の行に合計新しいrow.i利用組合ではなく、私が唯一の希望:それはある

SELECT Price, 0 AS LastRow FROM Orders WHERE Price > 10 
UNION 
SELECT SUM(Price), 1 AS LastRow FROM Orders WHERE Price > 10 
ORDER BY LastRow 
1

かなりトリッキーなbecau SEは、あなただけのLIMIT 0,30

SELECT fare, commission, driver, _date, vehiclenumber, productname, 
    source, destination, routename, routename, ownername 
FROM 
(
    SELECT * 
    FROM 
    (
     SELECT 1 as Part, 
      s.fare, s.commission, o.driver, s._date, v.vehiclenumber, p.productname, 
      s.source, s.destination, rs.routename as rs_routename, rd.routename, o.ownername 
     FROM route AS rs, route AS rd, shipment AS s, product AS p, vehicle AS v, owner AS o 
     WHERE s.vehicle = v.vehicleid 
     AND s.source = rs.routeid 
     AND v.owner = o.ownerid 
     AND s.destination = rd.routeid 
     AND s.product = p.productid 
     AND v.vehiclenumber = 'nk-234' 
     ORDER BY _date 
     LIMIT 0 , 30 
    ) Part1 
    UNION ALL 
    SELECT 2 as Part, 
     SUM(fare), SUM(commission), null, null, null, null, 
     null, null, null, null, null 
    FROM 
    (
     SELECT 
      s.fare, s.commission, o.driver, s._date, v.vehiclenumber, p.productname, 
      s.source, s.destination, rs.routename as rs_routename, rd.routename, o.ownername 
     FROM route AS rs, route AS rd, shipment AS s, product AS p, vehicle AS v, owner AS o 
     WHERE s.vehicle = v.vehicleid 
     AND s.source = rs.routeid 
     AND v.owner = o.ownerid 
     AND s.destination = rd.routeid 
     AND s.product = p.productid 
     AND v.vehiclenumber = 'nk-234' 
     ORDER BY _date 
     LIMIT 0 , 30 
    ) Part2 
) Joined 
ORDER BY Part, _date 
+0

間でその動作していない – sadi

+1

@sadiを合計したい - と、エラーメッセージがありますか? – RichardTheKiwi

+0

**#1060 - 列名 'routename'が重複しています** LIMIT 0,30 の中でのみSUMしたいのですが、車両番号= 'nk-234'のレコード全体 – sadi

関連する問題

 関連する問題