sql = " SELECT year(zhlDate) & '-' & month(zhlDate), count(*) " & _
                  " FROM zhiliao " & _
                  " WHERE patientId = '" & sPatId & "' " & _
                  " GROUP BY year(zhlDate) & '-' & month(zhlDate) " & _
                  " ORDER BY year(zhlDate) & '-' & month(zhlDate) "
以上代码是我要查询数据库中某一个id对应每个月的记录数,zhlDate是日期型的字段,保存为YYYY-MM-DD格式,我想按月查询此id对应的记录数。
但以上sql语句,编译虽然能通过,但是执行时就保存。
请问该怎么修改?我昨天问过一个同样的问题,但没有试验就结贴了。
请参照。
http://topic.csdn.net/u/20080903/23/2280835d-3e68-46f1-bf16-130328d77f36.html?seed=2122435278

解决方案 »

  1.   

    SELECT name 
        , year(date) & '-' & month(date) 
        , count(*) 
    FROM table1 
    GROUP BY name 
        , year(date)  & '-' & month(date) 
    ORDER BY name 
        , year(date)  & '-' &  month(date);在access中测试通过的
      

  2.   

    那你看看我这样写有什么问题?多谢。
    zhlDate是日期型的,
    patientId是文本型的。 sql = " SELECT year(zhlDate) & '-' & month(zhlDate), count(*) " & _
                      " FROM zhiliao " & _
                      " WHERE patientId = '" & sPatId & "' " & _
                      " GROUP BY year(zhlDate) & '-' & month(zhlDate) " & _
                      " ORDER BY year(zhlDate) & '-' & month(zhlDate) "
      

  3.   

    sorry, 是报错,执行数据库查询时报错。
      

  4.   

    看不出来,你截取sql到access中试
      

  5.   

    请问截取sql后怎么到access中测试?我打开access数据库也没有找到测试的选项。该怎么测试?
      

  6.   

    贴不了图,唉~~~~~
    查询   在设计视图中创建查询    关闭    视图     sql视图
      

  7.   

    VB 中字符串连接用 &,SQL 中字符串连接用 +,不要搞混了。            sql = " SELECT year(zhlDate) + '-' + month(zhlDate), count(*) " & _
                      " FROM zhiliao " & _
                      " WHERE patientId = '" & sPatId & "' " & _
                      " GROUP BY year(zhlDate) + '-' + month(zhlDate) " & _
                      " ORDER BY year(zhlDate) + '-' + month(zhlDate) "
      

  8.   


    oracle 用||
    access 用 &  +
    sql +(不一定全)
      

  9.   

    谢谢。
    贴图时可以先把图片上传到个人空间的相册里,然后把url粘帖上就可以了,
    我都是这么贴的。
      

  10.   

    结贴。
    使用&在access中测试没有问题,可以按要求取出数据。
    但到添加到vb中就报数据库错误,改成+也不行,还是执行sql时报同样的错误。
    郁闷。
      

  11.   

    通过 ADO 访问 Access 数据库基本上应该是 SQL-97 的标准,与 Access 内部的的 SQL 语法是不一致的。