Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana saya melakukan matematika dalam kueri sql untuk menghitung perbedaan persen?

Jika jumlah jawaban tidak diketahui sebelumnya, akan lebih mudah untuk membagi tabel pertanyaan menjadi 2 - satu untuk pertanyaan (id_pertanyaan, teks_pertanyaan), dan satu untuk pilihan (id_pertanyaan, id_pilihan, teks_pilihan). Tabel jawaban bisa dibuat menjadi (question_id, answer_id, choice_id). Kemudian memilihnya akan menggunakan sesuatu seperti berikut (QID =ID pertanyaan yang Anda pilih):

SELECT choice,
       (COUNT(*) / (SELECT COUNT(*)
                    FROM answers
                    WHERE answers.question_id = QID)) * 100 AS percentage
FROM choices
     INNER JOIN answers
       ON choices.choice_id = answers.choice_id
       AND choices.question_id AND choices.question_id
WHERE choices.question_id = QID
GROUP BY choice_id;

Yang dilakukan hanyalah menghitung jumlah total jawaban dalam kueri dalam, lalu untuk setiap pilihan, bagi jumlah jawaban dengan pilihan itu dengan totalnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ambil data yang diubah setelah halaman diperbarui

  2. Bagaimana cara mengoptimalkan kueri MYSQL EAV yang rumit ini?

  3. Pengecualian di utas utama org.hibernate.MappingException:Entitas tidak dikenal

  4. Periksa apakah ini duplikat

  5. Cara termudah untuk memigrasikan proyek Django dari MySQL ke PostgreSQL