0
votes

SQL: dates de filtrage par date d'aujourd'hui dans la clause

J'ai une procédure stockée et j'aimerais filtrer les dates de la date d'aujourd'hui (2020-06-25) dans la clause WHERE.

Exemple:

startdate enddate 2020-06-23 2020-06-23 2020-06-23 2020-06-24 2020-06-23 2020-06-25 2020-06-25 2020-06-26 2020-06-25 2020-07-10 2020-06-26 2020-06-26

J'ai essayé avec startdate> = '2020-06-25' et enddate> = '2020-06-25' , mais cela ne fonctionne pas.

Aidez-moi s'il vous plaît à obtenir la sortie souhaitée serait

startdate enddate Montrer 2020-06-23 2020-06-23 non 2020-06-23 2020-06-24 non 2020-06-23 2020-06-25 oui 2020-06-25 2020-06-26 oui 2020-06-25 2020-07-10 oui 2020-06-26 2020-06-26 non
sql

2 commentaires

Pourquoi la dernière ligne est exclue?


Quel produit DBMS utilisez-vous? "SQL" est juste une langue de requête, et non le nom d'un produit de base de données spécifique et des fonctions de date / heure sont très spécifiques au fournisseur. Veuillez ajouter un tag pour le produit de base de données que vous utilisez. Pourquoi devrais-je marquer mon DBMS


3 Réponses :


0
votes
select * from tbl_name 
where getdate() Between StartDate And EndDate

1 commentaires

Bien que ce code puisse répondre à la question, fournissant un contexte supplémentaire sur la manière et / ou pourquoi il résout le problème améliorerait la valeur à long terme de la réponse.



0
votes

Vous pouvez utiliser entre code> opérateur.

Dans MySQL: P>

SELECT *
FROM MyTable
WHERE GETDATE() BETWEEN StartDate AND EndDate


0 commentaires

1
votes

Il s'applique aux événements de la date spécifique ( '2020-06-25' code>), mais aussi aux événements qui commencent avant cette date et se terminent après.

StartDate <= '2020-06-25' And EndDate >= '2020-06-25'


0 commentaires