急求关于日期的字段的搜索(200分)

  • 主题发起人 主题发起人 royhgf
  • 开始时间 开始时间
R

royhgf

Unregistered / Unconfirmed
GUEST, unregistred user!
请问我要实现以下这个功能,该怎样做.
我一个表里面有个日期的字段,我要搜索年月相对应的记录,去掉最后的日.例如只要2006年7月的记录.急求!!
 
where to_char(rq,'yyyymm')='200607'
 
楼上是ORACLE语法的.不知楼主是什么数据库

select * from table where date like '2006-07%'
 
where (my_date>=2006-07-01) and (my_date<2006-08-01)
 
select * from table where left(date,7)='2006-07'
 
select str(ltrim(year(日期的字段)))+'年'+str(ltrim(month(日期的字段)))+月' as 年月 from 表
 
adoquery.sql.text :=
'select * from table where [red]year[/red](日期字段)='+edtYear.Text+' and [red]month[/red](日期字段)='+edtMonth.Text;
adoquery.open;
 
我的是PARADOX,我是用DateTimePicker取得日期的,请问具体应该怎么做?
我的年和月都是用一个变量表示的 year month 请问SQL语句应该怎么写?
 
都这样了还不会呀
 
针对SQL Server数据库:
select * from 表名 where year(日期字段)=:year and month(日期字段)=:month
在PARADOX中原理相同。使用“年”“月”函数实现你的功能。
 
select * from 表名 where year(日期字段)=:year and month(日期字段)=:month
 
where convert(varchar(7),date,121)='2006-07'

看看convert 和 cast 的转换 。里面有很多关于转换时间的介绍
 
以下是针对paradox的,sql server可以直接使用year/month函数
Select * From TableName Where EXTRACT(YEAR FROM DateField)=:Year And EXTRACT(MONTH FROM DateField)=:Month

Parambyname('Year').Asinteger := ??
............
 
请问eastweast我用的是三层结构,用SOCKNET 链接服务器,我是用CLIDENTDATASET 的COMMONTTEXST传递SQL的,里面可以写多条语句的吗
Year Month是什么类型的,是String吗?
 
between :d1 and :d2
d1:= datetimePicker1.date
d2:= dateTimePicker2.date

between 2006-7-1 and 2006-7-31,用datetimepicker取日期应该是比较常见的做法,可能很少有人直接让用户输入日期吧
 
year()用不了,为什么啊?
 
试试我给的做法了。何必拘泥于时间呢。只是个string 罢了
 
后退
顶部