Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách tải câu lệnh sql WHERE tự động cập nhật từ liên kết localhost

Sử dụng câu lệnh này để nhận được tất cả điểm của học sinh trong bài kiểm tra của bạn.

SELECT sq.stdid, sq.testid, COUNT(*) AS correctAnswers, 
SUM(q.marks) AS studentScore, (SELECT SUM(marks) FROM question 
WHERE testid=$_REQUEST['testid']) AS totalScore 
FROM question q, studentquestion sq 
WHERE sq.testid=$_REQUEST['testid'] AND q.testid = sq.testid 
AND q.qnid = sq.qnid AND sq.answered = 'answered' 
AND q.correctanswer = sq.stdanswer GROUP BY sq.stdid;

Bạn có thể tạo một biến PHP để tính tỷ lệ phần trăm. Ví dụ:

$scorePercentage = $r3['studentScore'] / $r3['totalScore'] * 100;

hoặc

$scorePercentage = $r3['studentScore'] .'/'. $r3['totalScore'];

// Output: echo $scorePercentage;
60
60/100

Sử dụng câu lệnh SQL này để nhận được ScorePercentage ngay bây giờ:
SELECT sq.stdid, sq.testid, COUNT(*) AS correctAnswers, 
(SUM(q.marks) / (SELECT SUM(marks) FROM question WHERE testid=1) * 100) 
AS studentScorePercentage FROM question q, studentquestion sq 
WHERE sq.testid=$_REQUEST['testid'] AND q.testid = sq.testid AND q.qnid = sq.qnid 
AND sq.answered = 'answered' AND q.correctanswer = sq.stdanswer 
GROUP BY sq.stdid;

SQLFiddle với các kết quả trên tại đây: http://sqlfiddle.com/#!9/8d47c/10



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Node Mysql không thể yêu cầu truy vấn sau khi gọi thoát

  2. Giữa hai bảng làm cách nào để CHỌN bảng trong đó id của một giá trị cụ thể tồn tại mysql

  3. Có an toàn không khi để người dùng chỉ định trường mysql để tìm kiếm?

  4. Thứ tự nhập nhật ký truy vấn chung MySQL

  5. MySQL trigger để đặt cột thành max + 1 không hoạt động