当前日期和数据库里生日(datetime)的比较问题~ 请问sql代码怎么写? select * from users where birthday(生日) = getdata() 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 datediff(day,birthday,getdate()) = 0如果想用参数传入当天日期则getdate() -> @yourdate 用format来规范格式,然后用substring来取出需要的字段进行比较。 declare @d1 datetimedeclare @d2 datetimeselect @d1 = '1999-01-01'select @d2 = '2004-01-01'select datediff(day,dateadd(year,datediff(year,@d1,@d2),@d1),@d2) select * from users where substring(convert(char(10),birthday,120),6,5) = substring(convert(char(10),getdate(),120),6,5)不知道有没有什么好方法感觉这样太麻烦了 kerlw(科尔) ( ) 信誉:100 2004-10-25 10:18:00 得分: 0 那就根据你自己数据库中生日的数据格式,把获得的本日的日期转化成那个格式来做比较。注意不要把数据库中的数据转化成别的个格式来比较。一般做比较,是不把数据库中的数据做转化的。 -------------------------------------------------------------------------------正确 string strSql = "select * from users where Month(birthday) =" + System.DateTime.Now.Month.ToString() +" and day(birthday) = " + System.DateTime.Now.Day; 你把birthday的字段分成两个字段year和dateyear里放1980;data里放10-10string strdate = DateTime.Now.ToString("MM-dd");this.sqlDataAdapter1.SelectCommand.CommandText = "select * from users where date = '" + strdate + "'"; Winform 关于现实子窗体问题 如何获得GraphicsPath中所有的point 关于表格的问题 求c#得到浏览器的标题(50) 给datagrid中的label赋值,赋值后datagrid仍然显示原label值,请问什么原因呀? 如何新建元素为ref的哦bject[]? SqlConnection Open()的问题 Task自动停止 打开端口 这是什么问题啊?急 如何保存窗口内容到图像文件? 在webform中有没有好用的日期控件
declare @d1 datetime
declare @d2 datetimeselect @d1 = '1999-01-01'
select @d2 = '2004-01-01'select datediff(day,dateadd(year,datediff(year,@d1,@d2),@d1),@d2)
那就根据你自己数据库中生日的数据格式,把获得的本日的日期转化成那个格式来做比较。
注意不要把数据库中的数据转化成别的个格式来比较。一般做比较,是不把数据库中的数据做转化的。
-------------------------------------------------------------------------------
正确
year里放1980;data里放10-10
string strdate = DateTime.Now.ToString("MM-dd");
this.sqlDataAdapter1.SelectCommand.CommandText = "select * from users where date = '" + strdate + "'";