Existe-t-il un moyen de comptabiliser le nombre d'essais non triés qui doivent être affichés? SI donc Quoi d'autre dois-je ajouter ou enlever de mon code MySQL?Problème MySQL COUNT
Merci pour l'aide à l'avance!
Voici mon code MySQL.
SELECT students.*, students_essays.*
FROM students
INNER JOIN students_essays ON students.student_id = students_essays.student_id
LEFT JOIN essays_grades ON students_essays.id = essays_grades.students_essays_id
WHERE essays_grades.grade_id IS NULL
ORDER BY students_essays.id DESC;
Voici mes tables MySQL.
CREATE TABLE students_essays (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
student_id INT UNSIGNED NOT NULL,
content TEXT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE students (
student_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
student_first_name VARCHAR(255) DEFAULT NULL,
student_last_name VARCHAR(255) DEFAULT NULL,
pass CHAR(40) NOT NULL,
PRIMARY KEY (student_id)
);
CREATE TABLE essays_grades (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
grade_id INT UNSIGNED NOT NULL,
students_essays_id INT UNSIGNED NOT NULL,
student_id INT UNSIGNED NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE grades (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
letter_grade VARCHAR(2) DEFAULT NULL,
grade_points FLOAT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (id)
);
Nombre par étudiant ou total? –
Je veux juste compter combien d'essais non classés il y a au total dans la base de données. – labs
Juste un commentaire sur la structure de votre table. Est-il jamais possible pour un essai d'avoir plus d'une note? Sinon, il n'y a aucune raison d'avoir la table 'essays_grades' ... vous pouvez simplement stocker le' grade_id' directement dans la table 'students_essays'. Cela rendra vos requêtes un peu plus faciles à l'avenir. –