recherche

Maison  >  Questions et réponses  >  le corps du texte

Interrogez une table SQL pour les dates qui commencent/se terminent dans une plage et les dates qui se situent dans la plage mais commencent avant/après la plage

Aperçu :

J'ai une table de base de données SQL où chaque ligne (événement) contient une date de début et de fin formatée sous forme d'horodatage.

Objectif :

Affiche les événements d'une semaine donnée, ceux-ci incluent les événements qui commencent et se terminent au cours de cette semaine, mais peuvent également avoir lieu au cours de cette semaine (leurs dates de début/fin peuvent être au cours de cette semaine, ou ils peuvent commencer et se terminer avant cette semaine) se termine après cette semaine). Exemple de résultat attendu :

J'ai essayé d'utiliser une requête BETWEEN et une requête utilisant start > {$week_start} AND end <

Question : Est-il possible d'écrire une seule requête qui couvre tous ces cas ?

BTW, s'il existe une meilleure solution, je suis d'accord avec l'utilisation d'un format de date autre que l'horodatage.

P粉147747637P粉147747637541 Il y a quelques jours679

répondre à tous(1)je répondrai

  • P粉222320176

    P粉2223201762023-07-22 00:35:31

    La logique que vous recherchez est :

    start <= {$week_end} ET fin >= {$week_start}

    répondre
    0
  • Annulerrépondre