比较查询sql server中的datetime

时间:2013-04-01 17:31:34

标签: sql-server

我有多个字段比较,唯一失败的是datetime字段。我的查询在这里:

SELECT 
       [RPC_NUMERO_CHEQUE]
      ,[RPC_NUMERO_CUENTA_ORIGEN]
      ,[RPC_ESTATUS_PAGO]
      ,[RPC_CODIGO_OFICINA]
      ,[RPC_FECHA_CHEQUE]
  FROM [Filemaker_CheckPro].[dbo].[TBL_RESUMEN_PROCESO_CAMARAS]
  WHERE [RPC_NUMERO_CHEQUE]='0025' 
     AND [RPC_NUMERO_CUENTA_ORIGEN]='07101000376' 
     AND [RPC_ESTATUS_PAGO]=1 
     AND [RPC_CODIGO_OFICINA]=1 
     AND [RPC_PROCESS_DATE] BETWEEN 20120911 AND 20120912//<--- HERE

正如您所注意到的,它不起作用,但我需要比较这些字段,它应该返回1个或更多结果。那么,我该如何归档呢?

2 个答案:

答案 0 :(得分:1)

您当前的查询非常接近。由于您有日期的字符串值,因此您需要在日期值周围使用单引号:

AND [RPC_PROCESS_DATE] BETWEEN '20120911' AND '20120912'

答案 1 :(得分:1)

您可以尝试使用Sql的Cast功能

 AND [RPC_PROCESS_DATE] BETWEEN 
      CAST('20120911' as datetime) AND 
      CAST('20120912' as datetime)