-1

重複の可能性:
MySQL クエリ - 'CAST' ' CONCAT' - データの複数の行を特定の量で乗算し、個々の合計を新しい列に £ で表示する方法は?

これが私のクエリですが、カウントに £1.50 を掛けて、合計価格列に £ で値を表示したいと考えています。現在、「BLOB」値を表示しているだけですが、何が間違っていますか? 私はそれを理解できません、どんな助けも大歓迎です...

SELECT CONCAT_WS(" ", c.customer_title, c.customer_fname, c.customer_sname) AS Customer,
COUNT(O.order_name) AS Ordertotal, concat('£' * 1.5) TotalPrice 
FROM Order O, Friend F, Customer C, FriendOrder 
WHERE C.customer_id = F.Customer_id 
AND F.Friend_id = FriendOrder.friend_id 
AND O.order_id = FriendOrder.order_id 
GROUP BY Customer 
ORDER BY C.customer_sname, C.customer_fname   

結果: ps 機密保持のため、顧客名の列は省略しました

Name COUNT totalPrice
     4       BLOB
     2       BLOB
     1       BLOB
     3       BLOB
     3       BLOB
     3       BLOB
     1       BLOB
     1       BLOB
     2       BLOB
     3       BLOB
     2       BLOB
4

2 に答える 2

0

あなたの問題は、無意味な小数で文字を乗算していることです。
代わりにこれを行います:

concat('£', price_column * 1.5) TotalPrice

注:price_column合計する金額の列の名前に変更するか、count(*)1.5倍の行数を取得するように変更します(質問から正確に何が欲しいかはわかりません)

于 2012-05-02T23:19:05.353 に答える
0

'£'文字列に数値を掛けています1.5。それが何をするのか完全にはわかりませんが、確かにあなたが望むものは達成されません。

代わりに試してください:

CONCAT('£', COUNT(*) * 1.5)
于 2012-05-02T23:19:15.787 に答える