A voir également:
- Intervale des dates
- Nombre de jours entre deux dates excel - Guide
- Comment trier des dates par mois sur excel - Guide
- Somme si entre deux dates ✓ - Forum Excel
- Nombre de nuits entre deux dates ✓ - Forum Excel
- Calcul de nbre de nuitees pour ch d'hotes ✓ - Forum Bureautique
2 réponses
Merci c'est déjà fait, il s'agit une requêtes sql pour vérifier si 2dates existent dans un intervalle, c'est pour un logiciel de gestion des véhicules exemple j'ai une véhicule assurée entre 01/01/2012 et 01/01/2013 si l'utilisateur veut ajouter une autre assurance et tape date debut 03/11/2012 et date fin 01/01/2014 alors le logiciel doit l'avertir qu'il ya une intersection des intervalles ici de 3/11/2012 à 1/1/2013 pour cette période le véhicule est déjà assuré aussi le cas des modification et si on a plusieurs dates
bon pour cela j'ai fait 2 requêtes par programmation c#
rq = "SELECT COUNT(ID_Assurance) as Nbr " +
"FROM Assurance " +
"WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND " +
"(Date_Debut <= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "') AND (Date_Fin >= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "')";
rq2 = "SELECT COUNT(ID_Assurance) as Nbr " +
"FROM Assurance " +
"WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND ('" + Assurance_DateFin.Value.ToString("MM/dd/yyyy") + "' > " +
"(SELECT MIN(Date_Debut) as Min FROM Assurance WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND " +
"(Date_Debut >= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "')))";
if (class_assurance.Existe_Membre(rq) || class_assurance.Existe_Membre(rq2))
{
MessageBox.Show("Vous devez vérifier la date d'assurance. Le véhicule choisi est déjà assuré pour cette période.", "ATTENTION!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
Assurance_DateDebut.Focus();
return;
}
merci pour le feedback
bon pour cela j'ai fait 2 requêtes par programmation c#
rq = "SELECT COUNT(ID_Assurance) as Nbr " +
"FROM Assurance " +
"WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND " +
"(Date_Debut <= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "') AND (Date_Fin >= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "')";
rq2 = "SELECT COUNT(ID_Assurance) as Nbr " +
"FROM Assurance " +
"WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND ('" + Assurance_DateFin.Value.ToString("MM/dd/yyyy") + "' > " +
"(SELECT MIN(Date_Debut) as Min FROM Assurance WHERE (ID_Vehicule = '" + class_assurance.ID_Vehicule + "') AND " +
"(Date_Debut >= '" + Assurance_DateDebut.Value.ToString("MM/dd/yyyy") + "')))";
if (class_assurance.Existe_Membre(rq) || class_assurance.Existe_Membre(rq2))
{
MessageBox.Show("Vous devez vérifier la date d'assurance. Le véhicule choisi est déjà assuré pour cette période.", "ATTENTION!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
Assurance_DateDebut.Focus();
return;
}
merci pour le feedback