select fssj,dxzx_id,fwq_ip,dx_xh,ydz,mddz,dxnr,dxlx,bmlx,dxfl,ydz_sd,mddz_sd,fxr_szd,
sxr_szd,fx_dxzx,sx_dxzx from ls_dxx where bmlx=bmlx and dxfl=dxfl and dxlx=103 or 
dxlx=203 or dxlx=201 and ydz_sd='2' or  mddz_sd='3' and  fssj>='2005-07-30 08:00:00' 
and fssj<='2005-07-30 09:00:00' 
提示我literal does not match fromat string 的错误,这个时为什么啊?????

解决方案 »

  1.   

    fssj<='2005-07-30 09:00:00' 是这个报的错吧。去掉试试!
      

  2.   

    用  between * and *
    select * from aaa where BuyTime between '2005-01-01 14:20:30' And '2005-07-01 14:20:30'
      

  3.   

    用  between * and *
    如:
    select * from aaa where BuyTime between '2005-01-01 14:20:30' And '2005-07-01 14:20:30'
      

  4.   

    你试一下:
    select fssj,dxzx_id,fwq_ip,dx_xh,ydz,mddz,dxnr,dxlx,bmlx,dxfl,ydz_sd,mddz_sd,fxr_szd,
    sxr_szd,fx_dxzx,sx_dxzx from ls_dxx where bmlx=bmlx and dxfl=dxfl and dxlx=103 or 
    dxlx=203 or dxlx=201 and ydz_sd='2' or  mddz_sd='3' and (fssj>='07/30/2005 08:00:00' 
    and fssj<='07/30/2005 09:00:00')确保fssj为DATETIME型。
      

  5.   

    select fssj,dxzx_id,fwq_ip,dx_xh,ydz,mddz,dxnr,dxlx,bmlx,dxfl,ydz_sd,mddz_sd,fxr_szd,
    sxr_szd,fx_dxzx,sx_dxzx from ls_dxx where bmlx=bmlx and dxfl=dxfl and dxlx=103 or 
    dxlx=203 or dxlx=201 and ydz_sd='2' or  mddz_sd='3' and  
    datediff(day, fssj, '2005-07-30')=0 and convert(varchar(8), fssj, 114)>='08:00:00'
    and convert(varchar(8), fssj, 114)> <='09:00:00'
      

  6.   

    select fssj,dxzx_id,fwq_ip,dx_xh,ydz,mddz,dxnr,dxlx,bmlx,dxfl,ydz_sd,mddz_sd,fxr_szd,
    sxr_szd,fx_dxzx,sx_dxzx from ls_dxx where bmlx=bmlx and dxfl=dxfl and dxlx=103 or 
    dxlx=203 or dxlx=201 and ydz_sd='2' or  mddz_sd='3' and  fssj>=ToDate('2005-07-30 08:00:00','yyyy-mm-dd hh:mm:ss') 
    and fssj<=ToDate('2005-07-30 09:00:00', 'yyyy-mm-dd hh:mm:ss') 
    试一下!