0

タスクは、2 つ以上の異なる特殊コードがあるオーダーコードのリストを取得することです。今、私はすでにこのクエリを持っています

SELECT
    o.id        AS iOrderId,
    o.code          AS sOrderCode,
    oa.pnr          AS sSpecialCode
FROM
    order_air AS oa
JOIN
    orders AS o ON 1
        AND oa.order_id = o.id
WHERE 1 
    AND o.status = 11
    AND oa.issued = 1
    AND oa.change_status != 0
    AND oa.issued_date BETWEEN NOW() - INTERVAL 12 MONTH AND NOW()
GROUP BY o.id
HAVING COUNT(*) >= 2
LIMIT 20

そしてそれは私を返します

ここに画像の説明を入力

すべて問題ありませんが、このクエリはさまざまな特殊コードをチェックしておらず、2 つ以上の特殊コードがあるすべてのオーダーコードを返すだけです。以前の orderid を保存してからチェックを行うために IF も調べてみましたが、以前の ID を @prev のようなものに保存する方法がわからないため、これは役に立ちませんでした。このキューを正しくフィルタリングする方法についてのアイデアはありません。 ?

4

2 に答える 2