求助,查询时限制在本周问题

问题描述

查询数据库中的timee时,如何限制查询的timee是本周的??请高手帮忙写下代码,非常十分以及及其感谢usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Data.OleDb;publicpartialclass_Default:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){}protectedvoidbtntj_Click(objectsender,EventArgse){stringtext=string.Empty;if(rb1.Checked){text="就业政策、流程";}elseif(rb2.Checked){text="职业生涯规划";}elseif(rb3.Checked){text="简历制作、面试技巧";}elseif(rb4.Checked){text="权益保障";}elseif(rb5.Checked){text="就业心理障碍";}elseif(rb6.Checked){text=other.Text;}DateTimedt=System.DateTime.Now;TimeSpants=newTimeSpan(6,30,0);if((dt.TimeOfDay>ts)&&(dt.DayOfWeek==DayOfWeek.Thursday)){Response.Write("<script>alert('对不起,本周不能预约了')</script>");}else{stringstrconnection="provider=microsoft.jet.oledb.4.0;DataSource=C:\DocumentsandSettings\User\MyDocuments\VisualStudio2005\work\App_Data\cauwork.mdb";OleDbConnectioncusconnection=newOleDbConnection(strconnection);cusconnection.Open();DateTimestartWeek=dt.AddDays(1-Convert.ToInt32(dt.DayOfWeek.ToString("d")));//本周周一DateTimeendWeek=startWeek.AddDays(6);//本周周日stringtimee=DropDownList1.SelectedValue.ToString();stringsqlstring="selectcount(*)fromjobwhereDateDiff('d',zxsj,'"+timee+"')<7zxsj='"+timee+"'";OleDbCommandcommand=newOleDbCommand(sqlstring,cusconnection);inti=(int)command.ExecuteScalar();if(i>=2){Response.Write("<script>alert('请换个时间段预约')</script>");}else{stringstrcmd="insertintojob([name],xuehao,collage,tel,banji,mail,zxnr,zxsj,[time])values('"+name.Text+"','"+xuehao.Text+"','"+collage.Text+"','"+tel.Text+"','"+banji.Text+"','"+mail.Text+"','"+text+"','"+DropDownList1.SelectedItem.Text+"',#"+dt+"#)";OleDbCommandcmd=newOleDbCommand(strcmd,cusconnection);//向数据库插入记录cmd.ExecuteNonQuery();cusconnection.Close();Response.Write("<script>alert('预约成功')</script>");name.Text="";collage.Text="";tel.Text="";xuehao.Text="";banji.Text="";mail.Text="";other.Text="";//重置}}}protectedvoidbtncz_Click(objectsender,EventArgse){name.Text="";collage.Text="";tel.Text="";xuehao.Text="";banji.Text="";mail.Text="";}protectedvoidbtnck_Click(objectsender,EventArgse){Response.Redirect("see.aspx");}}

解决方案

解决方案二:
你用timee与系统时间判断下SQL:datediff(day,timee,getdate)>6
解决方案三:
Dateadd(wk,datediff(wk,0,getdate()),-1)Dateadd(wk,datediff(wk,0,getdate()),6)
解决方案四:
楼上的楼上的方法有些不能满足楼主的要求,他要求是本周的,而不是一周时间内的,如果当前时间是星期一怎么办?楼上的,很抱歉我看不懂,在datediff短处的星期数上使用dateadd,可能我学艺不深的缘故我觉得楼主的这个要求可以先使用datepart(Weekday,getdate())算出星期几,然后使用dateadd算出本周的时间范围,最后用timee去比较就行了应该还有更好的方法~~
解决方案五:
期待下文
解决方案六:
ALTERPROCEDURETest_GetPlansByWeek(@UserIduniqueidentifier,--用户ID@DateDateTime,--开始时间@WeekDayint--周几)AS/*SETNOCOUNTON*/BEGINDECLARE@WeekBegindatetimeSELECT@WeekBegin=DATEADD(day,-@WeekDay,@Date)--计算本周第一天的日期SELECT*FROMTestWHERE(UserId=@UserId)AND(DATEDIFF("d",@WeekBegin,BeginDate)<7ANDDATEDIFF("d",@WeekBegin,BeginDate)>=0)ORDERBYBeginDateEND

解决方案七:
select*from表wheredatediff(week,日期字段,getdate())=0

解决方案八:
本来datediff就有这个功能,是返回的“时间间隔”的数目,而不是3楼所想象的只机械考虑7天时间。2007/12/31和2008/1/1相差仍然是一年。不过用的时候要注意当前的时间设置每周第一天是星期天还是星期一。

时间: 2024-08-31 14:39:56

求助,查询时限制在本周问题的相关文章

软件标准项目文档

原文:http://www.cnblogs.com/Little-Li/archive/2011/06/30/2094230.html 在项目开发过程中,应该按要求编写好十三种文档,文档编制要求具有针对性.精确性.清晰性.完整性.灵活性.可追溯性. ◇ 可行性分析报告:说明该软件开发项目的实现在技术上.经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由. ◇ 项目开发计划:为软件项目实施方案制订出具体计划,应该包括各部分工作的负责人员

存储过程中用到的年,月,周的函数

存储过程中用到的年,月,周的函数 2007-06-01 09:13 周: Dateadd(wk,datediff(wk,0,getdate()),-1)  Dateadd(wk,datediff(wk,0,getdate()),6) 月:Dateadd(mm,datediff(mm,0,getdate()),0)  Dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate())+1,0)) 年: Dateadd(yy,datediff(yy,0,getdate(

mysql-MySQL查询的语句求助,查询不重复一览

问题描述 MySQL查询的语句求助,查询不重复一览 有如下的表: CREATE TABLE loginlog (id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,username VARCHAR(100) DEFAULT NULL,operate VARCHAR(512) DEFAULT NULL, PRIMARY KEY (id) ) ENGINE=MYISAM AUTO_INCREMENT=1 DEFAULT CHARSET=gbk 表内相同use

ado-VC++操作Access数据库的查询语句出错,求助

问题描述 VC++操作Access数据库的查询语句出错,求助 刚学着用VC++操作Acess2003数据库,在对话框里添加一个列表控件,然后把存到数据库里的内容在列表控件中显示,用编辑框向数据库添加内容,基本是照着书上写的做,除了名字改了其它程序都没动.现在向数据库添加内容没有问题,可以正常的存进去.但是想用查询语句SELECT * FROM CKdataInfo把数据库里的内容显示出来就出错了,具体程序如下 void Cdb003Dlg::FreshList() { try { //查询数据库

sql server-求助!SQLServer查询实现由四张表得到新表?最新问题求助!!

问题描述 求助!SQLServer查询实现由四张表得到新表?最新问题求助!! 有四张表:Course.CourseType.Grade.student 表Course: courseID coursename coursetypeID 100001 智育1 001 100002 智育2 002 200001 德育1 001 200002 德育2 002 300001 体育1 001 300002 体育2 002 表:CourseType: coursetypeID typename 001 必修

mysql-MYSQL查询问题,求助?

问题描述 MYSQL查询问题,求助? 我想得到:extension_id a(report_type=0) b(report_type=1) 4 0 1 5 1 1 6 2 0 求助sql语句如何写? 解决方案 select extension_idsum(report_type0) asum(report_type1) b from (select extension_idcase when report_type=1 then cnt else 0 end report_type1case

mysql复杂查询语句求助

问题描述 mysql复杂查询语句求助 现在有一个表a,里面有一列为time,jsp中有两个变量fnum(本页首数),lnum(本页尾数) ,如何实现按照time倒序排列并且每页在fnum,lnum之间呢 select * from a where time limit fnum,lnum order by time desc??这样感觉不大对...求大虾解答 解决方案 select t.* from (select * from a where time limit fnum,lnum) t o

exception-winform程序报错求助(判断查询结果是否为空)

问题描述 winform程序报错求助(判断查询结果是否为空) 小弟初学c#,写了一个数据查询的程序,分别用四个方法实现数据查询结果是否为空的判断,方法1和方法2都可以,但是方法三和方法四一直提示 " 对象的当前状态使该操作无效"异常,请各位大侠给指点下,问题出在哪? 备注:1.oradr.GetString(0)))字段本人用控制台测试是能正确输出相关数据库字段信息的: 2.看到网上说这个错误一般是,数据超过1000条的缘故,但是这个用户数据库里面只有一条数据,所以我也有点头晕,还请各

sql-【SQL求助】用SQL Server查询语句中,IN 的使用问题。

问题描述 [SQL求助]用SQL Server查询语句中,IN 的使用问题. 我想查询一辆车在一个月内的记录.于是编写了如下代码: select * from 北京车辆能耗数据.dbo.北京朝批商贸股份有限公司 where ( [列 0] in ('京AC3537') and CAST ([列 2] as datetime)>'2013/11/1 00:00:00' and CAST ([列 2] as datetime)<'2013/12/1 00:00:00' ) order by CAS