sql = "select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate before " + stime + " and buydate after " + etime + " order by buydate,buyid";sql = "select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate >= " + stime + " and buydate <=" + etime + " order by buydate,buyid";这两种都不对。
我刚接触c#,不太清楚这些语法。请教各位高人,正确的sql语句应该怎么写?
谢谢!

解决方案 »

  1.   

    BETWEEN ...AND 还有日期格式要对应
      

  2.   

    select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate BETWEEN 2009-7-1 and 2009-7-9 order by buydate,buyid
    我将sql语句改成这样,没有提示错误,但是找不到数据。这是我数据库中的数据:
      

  3.   

    select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate BETWEEN '2009-7-1' and '2009-7-9' order by buydate,buyid 
    先在查询分析中执行一下!!!
    要对应日期字段,在C#中还要对应格式
      

  4.   

    select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate BETWEEN '2009-7-1' and '2009-7-9' order by buydate,buyid 加上单引号之后提示:标准表达式中数据类型不匹配。
      

  5.   

    数据库里为日期类型,C#中为short时间格式即可。
      

  6.   

    declare dateTime @TimeBegin
    set TimeBegin = '××××'
    declare dateTime @TimeEnd
    set TimeEnd = '*****'
    select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate BETWEEN @TimeBegin and  @TimeEnd order by buydate,buyid
      

  7.   

    试试查不出来数据。
    有具体的sql语句吗?
      

  8.   

    如果buydate字段为date类型的话
    select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate BETWEEN to_date('2009-7-1','yyyy-mm-dd') and to_date('2009-7-9','yyyy-mm-dd') order by buydate,buyid
      

  9.   

    看看帮助,查BETWEEN ...AND的写法就行了
      

  10.   

    sql = "select buyid as 单据号,buydate as 进货日期,proname as 商品名称,progys as 供应商,proprice as 单价,prounit as 单位,pronum as 商品数量,promoney as 金额 from buy_info where buydate between cast('" + stime + "' as DateTime) and cast('" + etime + "' as Datetime) order by buydate,buyid";