Semoga anda semua sihat! :D
Saya memerlukan bantuan anda untuk menyelesaikan tugasan berikut:
Saya perlu mencipta jadual berikut:
Tarikh | Pendapatan daripada transaksi baharu | Pendapatan hilang kerana bergolak | Pendapatan daripada upsells |
---|---|---|---|
1 Januari 2022 | $1000 | -$500 | $1000 |
2 Januari 2022 | $2000 | -$200 | $2000 |
Apa yang berlaku di sini ialah untuk mengumpul dan mengagregat data ini, saya perlu mendapatkan 3 jadual berbeza:
Urus niaga, Churn dan Upsells
PerdaganganJadual:
Berdagang | Tarikh akhir | pendapatan |
---|---|---|
Tawaran #1 | 1 Januari 2022 | $500 |
Tawaran #2 | 1 Januari 2022 | $500 |
Tawaran #3 | 2 Januari 2022 | $1500 |
Tawaran #4 | 2 Januari 2022 | $500 |
KerugianJadual:
Rugi | Tarikh akhir | Kehilangan pendapatan |
---|---|---|
churn #1 | 1 Januari 2022 | -$500 |
churn #2 | 2 Januari 2022 | -$100 |
churn #3 | 2 Januari 2022 | -$100 |
Senarai Upsell:
Upsell | Tarikh akhir | pendapatan |
---|---|---|
Upsell #1 | 1 Januari 2022 | $2000 |
Upsell #2 | 1 Januari 2022 | -$1000 |
Upsell #3 | 2 Januari 2022 | $2000 |
Soalan pertama ialah: Bagaimanakah saya boleh membuat arahan SQL untuk mencapai ini?
Terima kasih terlebih dahulu.
Anda boleh menggunakan subkueri untuk mengagregat jadual churn dan upsell.
Seperti yang ditunjukkan di bawah:
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=0875563c9ab7f9385711dde21cd98b47 一个>
Tolong jangan simpan tarikh sebagai teks, anda akan menghadapi banyak kesukaran. Kalau nak format tarikh boleh guna DATE_FORMAT
Perhatian. Jika tarikh lain wujud dalam jadual transaksi tetapi tidak dalam dua jadual lain, tarikh itu akan ditapis keluar daripada keputusan. Jika anda mahu, gunakan
LEFT JOIN
而不是INNER JOIN
.**Edit
https://dbfiddle.uk/S61QeLBX