以下の表に基づいてレコードをエクスポートしたいと思います。SQLクエリ - IDのある3つのテーブルからのクエリ
de_orders(DATE_ADDが作成順序で)
id_order | id_carrier | date_add
5 | 1 | 2017-10-24 09:14:51
6 | 2 | 2017-10-25 10:14:51
7 | 3 | 2017-10-26 08:14:51
de_order_history
id_order | id_order_state | date_add
5 | 2 | 2017-10-24 10:14:51
5 | 3 | 2017-10-24 11:14:51
5 | 4 | 2017-10-24 12:14:51
de_carrier
id_carrier | name
1 | XXX
2 | YYY
3 | ZZZ
私はその時点で1つの日付しか得ることができません。以下のクエリでは
id_order | id_carrier | date_add(from orders) | date_add (from id_order_state (4))
5 | XXX | 2017-10-24 09:14:51 | 2017-10-24 12:14:51
:
SELECT
o.id_order AS ID,
o.date_add AS Order_date,
h.date_add AS Delivered_date,
c.name AS carrier_name
FROM de_orders o
LEFT JOIN de_order_history h ON (o.id_order=h.id_order)
LEFT JOIN de_carrier c ON (o.id_carrier=c.id_carrier)
WHERE YEAR(o.date_add) = YEAR(CURRENT_DATE - INTERVAL 1 MONTH) AND MONTH(o.date_add) = MONTH(CURRENT_DATE - INTERVAL 1 MONTH)
AND h.id_order_state="4"
GROUP BY o.id_order
ORDER BY o.id_order
私は次のことをエクスポートしたいと思います:
望ましい結果がid_order | id_carrier | date_add(from orders) | date_add (from id_order_state (3)) | date_add (from id_order_state (4))
5 | XXX | 2017-10-24 09:14:51 | 2017-10-24 11:14:51 | 2017-10-24 12:14:51
(id_order_state = 4すべてのレコードを返します)
私は間違った方法でそれを見ていますか?
ありがとうございます。
*望ましい結果は*(4 id_order_state =すべてのレコードを返します)。.. id_order = 5。計算された列* date_add(id_order_state(3)から)はどのような基準に一致しますか? – Parfait
はい、私は、希望通りにリターンを達成するために条件を設定することに迷っています。 – Enthu