Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sylvain Lafontaine
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
merci olivier
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having
afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins
selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte
du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2
absences pour un cours en particulier ou pour l'ensemble des cours.
--
Sylvain Lafontaine, ing.
MVP pour « Windows Live Platform »
Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.)
Consultant indépendant et programmation à distance pour Access et
SQL-Server.
"olivier" <aa@aa.fr> wrote in message
news:eeKXJGdDKHA.4316@TK2MSFTNGP04.phx.gbl...
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom)
soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
merci olivier
olivier
Salut, heu, j'ai pas compris.... :-(
ETUDIANTS id Int nom varchar(20)
COURS id INT etudiant_id INT datecours DATETIME code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO') INSERT INTO etudiants (nom) VALUES ('TITI') INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 1)
voici de quoi comprendre : code_absence = 0 veut dire PRESENT code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des derniers cours. donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci olivier
"Sylvain Lafontaine" a écrit dans le message de news:
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
merci olivier
Salut,
heu, j'ai pas compris.... :-(
ETUDIANTS
id Int
nom varchar(20)
COURS
id INT
etudiant_id INT
datecours DATETIME
code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO')
INSERT INTO etudiants (nom) VALUES ('TITI')
INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 1)
voici de quoi comprendre :
code_absence = 0 veut dire PRESENT
code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des
derniers cours.
donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci
olivier
"Sylvain Lafontaine" <sylvainlafontaine2009@yahoo.ca> a écrit dans le
message de news: O4jZUzgDKHA.5780@TK2MSFTNGP03.phx.gbl...
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having
afin de filtrer ceux absents depuix deux cours (exactement ou plus ou
moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la
découverte du nombre d'absence. De plus, vous ne précisez pas si cela
doit être 2 absences pour un cours en particulier ou pour l'ensemble des
cours.
--
Sylvain Lafontaine, ing.
MVP pour « Windows Live Platform »
Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.)
Consultant indépendant et programmation à distance pour Access et
SQL-Server.
"olivier" <aa@aa.fr> wrote in message
news:eeKXJGdDKHA.4316@TK2MSFTNGP04.phx.gbl...
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom)
soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
COURS id INT etudiant_id INT datecours DATETIME code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO') INSERT INTO etudiants (nom) VALUES ('TITI') INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 1)
voici de quoi comprendre : code_absence = 0 veut dire PRESENT code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des derniers cours. donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci olivier
"Sylvain Lafontaine" a écrit dans le message de news:
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
merci olivier
Sylvain Lafontaine
Ah, désolé, je n'avais pas vu le champ code_absence.
Vos données sont difficiles à comprendre vu que vous entrez trois fois la même chose pour le premier et le deuxième étudiant. La notion d' « absences consécutives » est également difficile à saisir ici. En prenant le cas simple où vous voulez simplement les étudiants ayant 2 ou plus de 2 absences dans la table cours:
select e.*, sum (c.code_absence) from etudiants e inner join cours c on e.id = c.etudiant_id group by e.id, e.nom having sum (c.code_absence) >= 2
Mettez la dernière ligne (« having sum (c.code_absence) >= 2 ») en commentaire si vous voulez y voir plus clair. Aussi, afin de simplier la lecture de vos tables, vous devriez utiliser cours_id et etudiant_id (ou mieux encore car plus facile à lire: CoursId et EtudiantId) au lieu de ID et ID pour les tables Cours et Etudiants.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:%
Salut, heu, j'ai pas compris.... :-(
ETUDIANTS id Int nom varchar(20)
COURS id INT etudiant_id INT datecours DATETIME code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO') INSERT INTO etudiants (nom) VALUES ('TITI') INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 1)
voici de quoi comprendre : code_absence = 0 veut dire PRESENT code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des derniers cours. donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci olivier
"Sylvain Lafontaine" a écrit dans le message de news:
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
merci olivier
Ah, désolé, je n'avais pas vu le champ code_absence.
Vos données sont difficiles à comprendre vu que vous entrez trois fois la
même chose pour le premier et le deuxième étudiant. La notion d' «
absences consécutives » est également difficile à saisir ici. En prenant le
cas simple où vous voulez simplement les étudiants ayant 2 ou plus de 2
absences dans la table cours:
select e.*, sum (c.code_absence)
from etudiants e inner join cours c on e.id = c.etudiant_id
group by e.id, e.nom
having sum (c.code_absence) >= 2
Mettez la dernière ligne (« having sum (c.code_absence) >= 2 ») en
commentaire si vous voulez y voir plus clair. Aussi, afin de simplier la
lecture de vos tables, vous devriez utiliser cours_id et etudiant_id (ou
mieux encore car plus facile à lire: CoursId et EtudiantId) au lieu de ID et
ID pour les tables Cours et Etudiants.
--
Sylvain Lafontaine, ing.
MVP pour « Windows Live Platform »
Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.)
Consultant indépendant et programmation à distance pour Access et
SQL-Server.
"olivier" <aa@aa.fr> wrote in message
news:%239NztJjDKHA.1340@TK2MSFTNGP05.phx.gbl...
Salut,
heu, j'ai pas compris.... :-(
ETUDIANTS
id Int
nom varchar(20)
COURS
id INT
etudiant_id INT
datecours DATETIME
code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO')
INSERT INTO etudiants (nom) VALUES ('TITI')
INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES
('01/01/2009',3 1)
voici de quoi comprendre :
code_absence = 0 veut dire PRESENT
code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des
derniers cours.
donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci
olivier
"Sylvain Lafontaine" <sylvainlafontaine2009@yahoo.ca> a écrit dans le
message de news: O4jZUzgDKHA.5780@TK2MSFTNGP03.phx.gbl...
Vous faites un Group By sur le nombre de cours manquants suivi d'un
Having afin de filtrer ceux absents depuix deux cours (exactement ou plus
ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la
découverte du nombre d'absence. De plus, vous ne précisez pas si cela
doit être 2 absences pour un cours en particulier ou pour l'ensemble des
cours.
--
Sylvain Lafontaine, ing.
MVP pour « Windows Live Platform »
Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.)
Consultant indépendant et programmation à distance pour Access et
SQL-Server.
"olivier" <aa@aa.fr> wrote in message
news:eeKXJGdDKHA.4316@TK2MSFTNGP04.phx.gbl...
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom)
soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.
Ah, désolé, je n'avais pas vu le champ code_absence.
Vos données sont difficiles à comprendre vu que vous entrez trois fois la même chose pour le premier et le deuxième étudiant. La notion d' « absences consécutives » est également difficile à saisir ici. En prenant le cas simple où vous voulez simplement les étudiants ayant 2 ou plus de 2 absences dans la table cours:
select e.*, sum (c.code_absence) from etudiants e inner join cours c on e.id = c.etudiant_id group by e.id, e.nom having sum (c.code_absence) >= 2
Mettez la dernière ligne (« having sum (c.code_absence) >= 2 ») en commentaire si vous voulez y voir plus clair. Aussi, afin de simplier la lecture de vos tables, vous devriez utiliser cours_id et etudiant_id (ou mieux encore car plus facile à lire: CoursId et EtudiantId) au lieu de ID et ID pour les tables Cours et Etudiants.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:%
Salut, heu, j'ai pas compris.... :-(
ETUDIANTS id Int nom varchar(20)
COURS id INT etudiant_id INT datecours DATETIME code_absence INT
INSERT INTO etudiants (nom) VALUES ('TOTO') INSERT INTO etudiants (nom) VALUES ('TITI') INSERT INTO etudiants (nom) VALUES ('TATA')
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',1 0)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',2 1)
INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 0) INSERT INTO COURS (datecours,etudiant_id , code_absence) VALUES ('01/01/2009',3 1)
voici de quoi comprendre : code_absence = 0 veut dire PRESENT code_absence = 1 veut dire ABSENT
je veux les etudiants ayant eu au moins 2 absences consécutives lors des derniers cours. donc, dans mon exemple, uniquement l'etudiant n° 2 'TITI'
En espérant que c'est plus clair ?
merci olivier
"Sylvain Lafontaine" a écrit dans le message de news:
Vous faites un Group By sur le nombre de cours manquants suivi d'un Having afin de filtrer ceux absents depuix deux cours (exactement ou plus ou moins selon ce que vous voulez exactement).
Vous ne semblez pas avoir de calendrier, ce qui rend difficile la découverte du nombre d'absence. De plus, vous ne précisez pas si cela doit être 2 absences pour un cours en particulier ou pour l'ensemble des cours.
-- Sylvain Lafontaine, ing. MVP pour « Windows Live Platform » Courriel: sylvain2009 sylvainlafontaine com (remplissez les blancs, svp.) Consultant indépendant et programmation à distance pour Access et SQL-Server.
"olivier" wrote in message news:
Bonjour,
là ! je sèche :-)
Soit une table ETUDIANTS (id, nom) soit une table COURS (id, etudiant_id, date, code_absence)
J'aimerai avoir la liste des ETUDIANTS étant absents depuis deux cours.