select * from device where buydate>str_date //str_date是那个年份
定义一个参数比如@p,当输入参数是执行类似下面语句 select * from device where buydate>@p 或者是 ..................................<@p
谢谢各位!!原来还有LEFT这个函数哈.select * from device where buydate>str_date //str_date是那个年份定义一个参数比如@p,当输入参数是执行类似下面语句 select * from device where buydate>@p 或者是 ..................................<@p这两种方法不行,因为buydate是文本类型,如何直接和一个值比校的话,会出现数据类型不匹配的错误.
使用TQuery控件query1, 并定义其SQL语句为: select * from device where buydate > :pDate 然后,指定参数pDate的值 query1.ParamByName('pDate').AsInteger := query2.FieldByName('buydate').AsInteger - 100;
SELECT * FROM device WHERE left(buydate,4)>1998 and left(buydate,4)<2000
如果小于等于1999年,则写sql buydate<'199901'
就行了
//str_date是那个年份
select * from device where buydate>@p 或者是
..................................<@p
//str_date是那个年份定义一个参数比如@p,当输入参数是执行类似下面语句
select * from device where buydate>@p 或者是
..................................<@p这两种方法不行,因为buydate是文本类型,如何直接和一个值比校的话,会出现数据类型不匹配的错误.
select * from device where buydate > :pDate
然后,指定参数pDate的值
query1.ParamByName('pDate').AsInteger := query2.FieldByName('buydate').AsInteger - 100;