簡體   English   中英

T-SQL查詢不適用於DATE

[英]T-SQL Query doesn't work with DATE

我有下表,名為E_TARIFFE

表格1

如果我運行以下語句:

SELECT * 
FROM E_TARIFFE 
WHERE COD_EVENTO = 1 
AND PAGAMENTO_UNICO = 1 
AND VALIDA_DAL >= CONVERT(DATE,GETDATE()) -- Today, 2016-11-07
AND VALIDA_AL <= CONVERT(DATE,GETDATE())

查詢不返回任何行。 為什么?
我希望輸出中的第3行...

謝謝。

您有倒退的邏輯:

WHERE COD_EVENTO = 1 AND
      PAGAMENTO_UNICO = 1 AND
      VALIDA_DAL <= CONVERT(DATE, GETDATE()) AND -- Today, 2016-11-07
      VALIDA_AL >= CONVERT(DATE, GETDATE())

盡管我不是BETWEEN的粉絲,但您可能會更好地遵循:

 WHERE COD_EVENTO = 1 AND
      PAGAMENTO_UNICO = 1 AND
      CONVERT(DATE, GETDATE()) BETWEEN VALIDA_DAL AND VALIDA_AL

您的所有VALIDA_DAL日期值都小於今天的日期。 這將不返回任何行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM