| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1789 人关注过本帖
标题:请问如何在数据库中按月份查找
只看楼主 加入收藏
yflovevb01
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-4-28
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:4 
请问如何在数据库中按月份查找
Private Sub Command1_Click()  '“查询”按钮
    If Combo1.Text = "" Then
        MsgBox "请在列表框中选择项目", , "信息提示"
        Combo1.ListIndex = 0
        Combo1.SetFocus
        Exit Sub
    Else
        Adodc1.RecordSource = "select * from guest where month(时间) =  '2005-'+ ' " _
                              + Trim(Combo1.Text) + " ' order by 时间"
        Set DataGrid1.DataSource = Adodc1
    End If
End Sub


Private Sub Form_Load()
    Adodc1.RecordSource = "select * from guest order by 编号"
    Set DataGrid1.DataSource = Adodc1
    Combo1.AddItem "1"
    Combo1.AddItem "2"
    Combo1.AddItem "3"
    Combo1.AddItem "4"
    Combo1.AddItem "5"
    Combo1.AddItem "6"
    Combo1.AddItem "7"
    Combo1.AddItem "8"
    Combo1.AddItem "9"
    Combo1.AddItem "10"
    Combo1.AddItem "11"
    Combo1.AddItem "12"
    Combo1.Text = ""
End Sub


以上是我看书抄出来的一段代码
改成我需要的东西了
然后运行程序以后
数据库会全部显示出来
不会执行按月查找
请问我需要改什么地方
最好后面加单引号注释一下
我太菜了
谢谢
搜索更多相关主题的帖子: 数据库 查找 Sub Text End 
2017-05-04 19:40
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:0 
库字段?

无知
2017-05-05 03:35
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:938
专家分:5244
注 册:2015-8-10
收藏
得分:10 
关键在这句
Adodc1.RecordSource = "select * from guest where month(时间) =  '2005-'+ ' " _
                              + Trim(Combo1.Text) + " ' order by 时间"

month是SQl的函数,获得了时间这个字段中的月份,你的代码为何还要记上2005
如果要按照年月查询,可以考虑 CONVERT(varchar(100), 时间, 23) ,出来的是2005-01-01的格式,再用长度截取或者模糊查询即可,
当然你也可以year + month拼接,跟你现在的方法类似。
2017-05-05 09:28
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
收藏
得分:10 
这样简单一点吧
For I=1 To 12
    Combo1.AddItem I
Next I
Adodc1.RecordSource = "Select * From guest Where 时间>=#"Cdate(CStr(Year(Date)) & "-" & Trim(Combo1.Text) & "-1")"# And 时间<=#"Cdate(CStr(Year(Date)) & "-" & Trim(Combo1.Text) & "-31")"#  order by 时间"
这个每个月最后一天是不一样的,可能是31,也可能是30 ,还有可能是28或29,因此,后面的  "-31" 根据月份不同而不同,否则可能发生错误。

请不要选我!!!
2017-05-06 16:50
yflovevb01
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-4-28
收藏
得分:0 
回复 3楼 xiangyue0510
请问具体怎么更改呢
2017-05-09 17:00
快速回复:请问如何在数据库中按月份查找
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017990 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved