标题 | sql server 取当天或当月的记录 |
内容 | jsp向数据库中添加日期 ms sql server: nsert into student(studentid,time1)values('15',getdate()); my sql insert into tablename (fieldname) values (now()) 取得数据库某表的所有行数 connection conn=dbconnection.connecttodb(); statement stat=conn.createstatement(); resultset rs=stat.executequery(select count(*) from book); rs.next(); rs.getint(1);//以前好像有试过是rs.getint(0); sql 取当天或当月的记录 sqlsql server sql 取当天或当月的记录 今天晚上加班,遇到要把数据库中的时间和当天时间进行比较的问题,直接比较肯定是不行的了。因为表中的时间格式是这样的:2007-02-02 16:50:08.050, 如果直接和当天的时间比较,就总得不到准确数据,但是我们可以把这种格式的时间[格式化]成2007-02-02,也就是只有年-月-日,然后把当天的时间也格式化成 年-月-日的格式。 这样,思路就出来了! 我们格式化日期要用到 convert()这个函数,要用到3个参数,首先来格式化当天的日期,convert(varchar(10),getdate(),120) 这样我们就可以把当天的日期格式化为: 2007-2-2,然后格式化数据库表中的日期 convert(varchar(10),timefiled,120),最后我们就可以用一条sql语句得到当天的数据了。 例如: 程序代码 select * from view_countbill where convert(varchar(10),[time],120) = convert(varchar(10),getdate(),120) 注意: convert() 函数中的各个参数的意义,第一个参数,varchar(10)是目标系统所提供的数据类型,包括 bigint 和 sql_variant.不能使用用户定义的数据类型。第二个参数是你要转换的字段,我这里是[time].最后一个就是格式了,这个值是可选的:20或者120都可以,它遵循的是[odbc 规范],输入/输出样式为:yyyy-mm-dd hh:mm:ss[.fff] 具体的可以参考sql server的联机帮助! t-sql查找表中当月的记录 思路:将要查找的时间字段用month()函数取出其中的月份,然后再取出当前月的月份,对比就ok了 例: 程序代码 select * from view_countbill where month([time]) = month(getdate()) |
随便看 |
|
在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。