小弟在进行年龄段查询的时候,遇到一个问题,望各位指点迷津!
我用两个TextBox接收两个数据age1,age2,在后台回传数据库并进行查询,要求年龄age1到age2的都查出来,其中birthday为datetime类型
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("Select * From [gb] Where 1=1 ");
int a = int.Parse(age1.Text);
int b = int.Parse(age2.Text);
sb.AppendFormat(" And datediff([year],birthday,getdate()) between +a and +b");
我在数据库中单独运行select * from table where datediff([year],birthday,getdate()) between 20 and 40就能正确输出,但用动态的a,b就不行了,望大家给点解决方法,谢谢啦!
我用两个TextBox接收两个数据age1,age2,在后台回传数据库并进行查询,要求年龄age1到age2的都查出来,其中birthday为datetime类型
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("Select * From [gb] Where 1=1 ");
int a = int.Parse(age1.Text);
int b = int.Parse(age2.Text);
sb.AppendFormat(" And datediff([year],birthday,getdate()) between +a and +b");
我在数据库中单独运行select * from table where datediff([year],birthday,getdate()) between 20 and 40就能正确输出,但用动态的a,b就不行了,望大家给点解决方法,谢谢啦!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货