Saya tidak boleh membuat pertanyaan untuk mendapatkan senarai ID pelanggan dan tarikh pembelian ke-20 mereka.
Saya mendapat jadual yang dipanggil transaksi dengan nama lajur customer_id dan purchase_date. Setiap baris dalam jadual sama dengan transaksi.
id_pelanggan | Tarikh pembelian |
---|---|
1 | 2020-11-19 |
2 | 2022-01-01 |
3 | 2021-12-05 |
3 | 2021-12-09 |
3 | 2021-12-16 |
Saya mencuba ini dan menganggap bahawa saya perlu mengira bilangan kali pelanggan_id disebut dan jika kiraan bersamaan dengan 20, kembalikan nombor id.
SELECT customer_id, MAX(purchase_date) FROM transactions ( SELECT customer_id, FROM transactions GROUP BY customer_id HAVING COUNT (customer_id) =20 )
Bagaimanakah saya boleh mengembalikan senarai id_pelanggan dan tarikh transaksi ke-20?
Penyelesaian saya:
Lihat juga: DBFIDDLE
Untuk MySQL5.7, lihat: DBFIDDLE
Anda perlu memilih baris transaksi kepunyaan customer_id dan menapis keputusan mengikut baris 20