誰かが答える時間があれば簡単に質問できます。現在のクエリはうまく機能しますが、注文数と合計配送数も取得する必要があります。私は数が結合のために投げ捨てられているのを知っています。カウント、合計、およびグループによるSQLクエリー
私は私の数との和がなることを知っている:私は、元の選択に数との和を使用して参加で、残りを処理する必要があると思うが、私の人生のために
count(DISTINCT orders.id) AS num_orders,
SUM(orders.shipping_cost_ex_tax) AS shipping
私はこの権利を得ることができません。
「別のクエリを実行する」場合でも、どんな助けもありがたいです。みんな、ありがとう。
現在のクエリ:
SELECT
IF(products.categories LIKE '68', 'Shirts', 'Books') AS group_key,
CONCAT(order_products.name) AS product_name,
brands.name AS author,
SUM(order_products.quantity) AS num_units,
CASE WHEN products.sku LIKE '%-WB' THEN 'Combo'
WHEN products.sku LIKE '%-BO' THEN 'Box'
ELSE ''
END AS item_type,
SUM(IF(order_products.discount IS NULL, order_products.price_ex_tax, (order_products.price_ex_tax - order_products.discount))) AS income
FROM orders
INNER JOIN order_products ON order_products.bc_order_id = orders.bc_id
INNER JOIN products ON order_products.bc_product_id = products.bc_id
INNER JOIN brands ON products.brand_id = brands.bc_id
WHERE (orders.created_at BETWEEN '2012-01-28 00:00:00' and '2012-02-21 23:00:00')
GROUP BY group_key,
case when products.brand_id = '68'
then products.name
else products.sku
end
使用しているSQL製品はどれですか? –
結合があなたを捨てて、他のすべての嫌悪感を吹き飛ばせない場合、私は仕事のより小さな部分を行うサブクエリでそれを再加工しようとします。また、あなたの '収入'は 'SUM(order_products.price_ex_tax - COALESCE(order_products.discount、0))'と書くことができ、 'CONCAT(order_products.name)'は 'order_products.name'と同じです。 –
ダニエルありがとうございます。私はそれを知ってはいたが、しなかったはずだった。 – livinginink