supérieur à et inférieur à égal à en sql?

comment puis-je utiliser plus grand que égal à et less que égal à au lieu d'utiliser entre dans SQL

Je vérifie la variable de date en sql

J'ai essayé comme ça.

Date between coalesce(@fromDate,Date) and coalesce(@toDate,Date) 

mais si l'user n'entre pas de date (fromDate ou toDate)

de sorte que j'ai besoin de convertir la condition ci-dessus en greater than equal to and less than equal to

s'il vous plaît aider à la syntaxe en sql. Merci

 IF @fromDate IS NULL BEGIN SET @fromDate = '1900-01-01'; END; IF @toDate IS NULL BEGIN SET @toDate = '2099-01-01'; END; SELECT things FROM table WHERE date_field BETWEEN @toDate AND @fromDate; 

Ce code vous donnera essentiellement une gamme arbitrairement large pour vérifier qui devrait vous donner une performance raisonnable et returnner tous les résultats (en supposant que c'est ce que vous voulez quand aucune valeur n'est fournie).

Ce code peut être raccourci à:

 SELECT things FROM table WHERE date_field BETWEEN Coalesce(@toDate, '1900-01-01') AND Coalesce(@fromDate, '2099-01-01'); 

Mais j'ai gardé la version verbeuse pour illustrer.

Essaye ça

 SELECT Date FROM TableName WHERE Date > @fromDate AND Date < @toDate 
 SELECT * FROM dbo.Account AS a WHERE 1 = 1 AND ( @toDate IS NULL OR a.CreateDate <= @toDate ) AND ( @fromDate IS NULL OR a.CreateDate >= @fromDate ) 

S'il vous plaît noter le 1 = 1 est seulement là pour rendre les conditions claires et n'est en aucun cas nécessaire.

Cela devrait être ce à quoi ressemblerait la clause where.

 Where Date >= @fromDate And Date <= @toDate