Rumah  >  Soal Jawab  >  teks badan

Kedudukan MySQL mengikut masa tarikh dan jumlah

<p>Saya mempunyai pangkalan data yang menyimpan rekod pembelian: </p> <pre class="brush:php;toolbar:false;">|harga produk | ---------------------------------------------------- |. 1 | 2 |. -0.75 | |. 3 |. -0.65 | 2 |. -0.75 | |. 1 | |. 3 | |. 1 |. 2 | |. 2 |. -0.75 | |. 3 |. -0.65 | |. 3 | |. 3 |. -1.50 |. <p>N.B. Masa tidak penting dalam masalah ini. </p> <p>Apa yang saya mahu ialah kedudukan setiap pengguna setiap hari Contohnya, situasi pengguna 1 adalah seperti berikut: </p> <pre class="brush:php;toolbar:false;">|produk1 | ------------------------------------------------- ------------------ |. 01-2022 | |. 2022-01 |. 1 |. <p>Sila ambil perhatian bahawa kedudukan dikira setiap hari. </p> <p>Pertanyaan berikut memberikan sebahagian daripada jadual: </p> <pre class="lang-sql prettyprint-override"><code>SELECT DATE(`datetime`) AS datetime, JUMLAH(KES BILA produk = 1 KEMUDIAN 1 LAIN 0 TAMAT) SEBAGAI produk1, JUMLAH(KES BILA produk = 2 KEMUDIAN 1 LAIN 0 TAMAT) SEBAGAI produk2, JUMLAH(KES BILA produk = 3 KEMUDIAN 1 LAIN 0 TAMAT) SEBAGAI produk3, JUMLAH(KES BILA produk = 1 KEMUDIAN 0.75 LAIN 0 TAMAT)+JUMLAH(KES BILA produk = 2 KEMUDIAN 0.65 LAIN 0 TAMAT)+JUMLAH (KES BILA produk = 3 KEMUDIAN 1.5 LAIN 0 TAMAT) secara keseluruhan, DARIPADA `sejarah` WHERE user_id=1 KUMPULAN MENGIKUT TARIKH(`masa tarikh`) </code></pre> <p>Masalah saya hampir sama dengan yang ini: ranking MySQL, tetapi saya tidak boleh mendapatkan keputusan tepat seperti yang saya tanya. Hanya semua pengguna untuk setiap hari boleh diberi kedudukan. Jika saya menambah fungsi ranking yang diberikan, ia akan melihat jadual dan meletakkan 2022-01-02 sebagai yang pertama (kerana 2.90 lebih tinggi daripada 0.75). Bagaimanakah saya boleh membuat kedudukan berfungsi untuk setiap hari? </p>
P粉322319601P粉322319601415 hari yang lalu515

membalas semua(1)saya akan balas

  • P粉707235568

    P粉7072355682023-09-02 00:07:31

    Persoalannya tidak jelas sepenuhnya. Walau bagaimanapun, saya rasa perkara yang anda tanyakan ialah cara menilai pembelian mengikut semua pengguna mengikut hari:

    tarikh_sejarah user_id Jumlah Harian totalRank
    2022-01-01 2 1.50 1
    2022-01-01 1 0.75 2
    2022-01-01 3 0.65 3
    2022-01-02 3 3.65 1
    2022-01-02 1 2.90 2
    2022-01-02 2 0.75 3

    balas
    0
  • Batalbalas