DB2:year(date_expression)返回date_expression中的年份
oracle :select to_char(sysdate,'yyyy') as nowYear from dual; //获取时间的年
MySQL: year(curdate());
SQL :Year(date)
第一步:你做错了,他们给的这个数据类型根据你的需求根本用不着更改为datetime,为什么会变成这样也是因为这个数据根本就不能转成datetime模式
/ 接下来。。。。。重新恢复你的数据类型为 numeric(18, 0) 看数据能不能恢复原来的样子 或着用下面二位的用法,再根据year和month取值,我建议先试前面一种(因为这是人家给你的数据,不能乱改,万一人家在其它地方有引用,人家问起来你就不好回了) /
前面一种按年月来查询可以这样写
select left(fyearmonth,4),right(left,2),sum(qty) from tb
group by left(fyearmonth,4),right(left,2)
Year(@time), Month(@time) 2 个函数即可。
然后用它们来组装字符串也就简单了。
CONVERT(VarChar(7), @time, 120)会得到YYYY-MM。调用。
用转成字符串,,但此时他已经不是时间类型。
CONVERT(char(7),"你的时间例",120)
sql server 中,
可以用cast()函数将日期时间转换为日期,
比如:cast('2014-01-22 13:22:35000' as date) 的结果为2014-01-22
以下语句是查询2012年的数据,日期范围可以修改
select 表名
where CAST(时间字段 as date) between '2012-01-01' and '2012-12-31'
如果要查全年数据,也可以这样,
select 表名 where year(时间字段)=2012
另外,用convert()函数也可以将日期时间字段转换为日期字段来代替cast,具体用法baidu一下
如果是oracle数据库请用to_date()代替cast将日期时间字段转换为日期来查询
你建一个form,仍
一个
button,一个ADOconnection,一个ADOquery,一个DateTimePicker
下面是button的代码。可以取得SQL的日期
procedure
TForm1Button1Click(Sender:
TObject);
begin
with
adoquery1
DO
BEGIN
CLOSE;
SQLClear
;
SQLAdd('select
getdate()');
OPEN;
END;
DateTimePicker1DateTime
:=
adoquery1Fields[0]AsDateTime
;
end;
以上就是关于数据库日期转换问题全部的内容,包括:数据库日期转换问题、SQL 数据类型转换 日期由数字型numeric(18, 0)转换为datetime型、SQL数据库中怎么将时间格式转换到年和月等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)