最近在使用Firebird数据做 一项目,使用FireBird边用边学。(以下转贴)
查询度以后的,12月份以上的数据记录,datetime为timestamp字段
select * fromtableblobwhere extract(month fromdatetime)=12 and extract(year fromdatetime)>
查询不重复的(年份+月份)组合,datetime为timestamp字段
select distinct (extract(year fromdatetime)||extract(month fromdatetime)) fromtableblob
获取当前年(其它如year,month,day,hour,minute,second,week,weekday等,都可以获取):
select extract(year from current_timestamp) from rdb$database
select extract(week from current_timestamp) from rdb$database
日期时间操作
FB中获得时间的操作符:
CURRENT_DATE : 当前日期
CURRENT_TIME : 当前时间
CURRENT_TIMESTAMP: 当前的日期时间,也称时间戳
从时间类型中获得信息的操作符:
EXTRACT(.. FROM ..)
Select EXTRACT(.. FROM ..) from RDB$DATABASE
如果返回值不存在时间值中会报错.
时间类型中的年份 EXTRACT(YEAR from CURRENT_TIMESTAMP); EXTRACT(YEAR from CAST('-8-1' as Date))=
月份 EXTRACT(MONTH from CURRENT_TIMESTAMP); EXTRACT(MONTH from CAST('-8-1' as Date))=8
日期 EXTRACT(DAY from CURRENT_TIMESTAMP); EXTRACT(DAY from CAST('-8-1' as Date))=1
天数 EXTRACT(YEARDAY from CURRENT_TIMESTAMP) ;EXTRACT(YEARDAY from CAST('-8-1' as Date))=212
星期几 EXTRACT(YEARDAY from CURRENT_TIMESTAMP); EXTRACT(DAY from CAST('-8-1' as Date))=1
CAST('Now' as Timestamp) 相当于 Current_Timestamp
CAST('ToDay' as Date) 今天的日期
CAST('yesterday' as Date') 昨天的日期
select extract(year from cast('-1-1' as date))
-extract(year from cast('-1-1' as date))
from rdb$database