如何用sql语句把datetime类型字段改成float 类型字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用sql语句把datetime类型字段改成float 类型字段相关的知识,希望对你有一定的参考价值。

FAmount字段是datetime 类型,如何直接把它改成folat类型..
我试过先把datetime类型,改成varchar类型,再把varchar类型改成float类型,这样可以行得通,但是我想直接把datetime类型改成float类型,不知道该如何做.

参考技术A 这样直接转换肯定不行的,可以考虑下新增一个列,FAmount列的值转换过去,
select convert(float,convert(char(12),getdate(),121))本回答被提问者和网友采纳
参考技术B sqlserver

2015-04-17
09:53:26.000
对应的float是
你hh的数据是从excel中导入的吧
excel计算时间和sqlserver相差两天的
excel中1代表的是1900-01-01,而sql server转换时用的公式是:1900-01-01 再加 上1;
excel计算时,认为1900年的2月份有29天,而sql server计算时认为1900年2月份只有28天

如何用Sql语句添加字段?

通用式: alter table [表名] add [字段名] 字段属性 default 缺省值 default 是可选参数\x0d\x0a增加字段: alter table [表名] add 字段名 smallint default 0 增加数字字段,整型,缺省值为0\x0d\x0aalter table [表名] add 字段名 int default 0 增加数字字段,长整型,缺省值为0\x0d\x0aalter table [表名] add 字段名 single default 0 增加数字字段,单精度型,缺省值为0\x0d\x0aalter table [表名] add 字段名 double default 0 增加数字字段,双精度型,缺省值为0\x0d\x0aalter table [表名] add 字段名 Tinyint default 0 增加数字字段,字节型,缺省值为0\x0d\x0aalter table [表名] add 字段名 text [null] 增加备注型字段,[null]可选参数\x0d\x0a\x0d\x0aalter table [表名] add 字段名 memo [null] 增加备注型字段,[null]可选参数\x0d\x0a\x0d\x0aalter table [表名] add 字段名 varchar(N) [null] 增加变长文本型字段大小为N(1~255)\x0d\x0a\x0d\x0aalter table [表名] add 字段名 char [null] 增加定长文本型字段大小固定为255\x0d\x0a\x0d\x0aalter table [表名] add 字段名 Datetime default 函数增加日期型字段,其中函数可以是now(),date()等,表示缺省值\x0d\x0a\x0d\x0a(上面都是最常用的,还有其他的属性,可以参考下面的数据类型描述)\x0d\x0a\x0d\x0a删除字段: alter table [表名] drop 字段名\x0d\x0a\x0d\x0a修改变长文本型字段的大小:alter table [表名] alter 字段名 varchar(N)\x0d\x0a\x0d\x0a删除表: drop table [表名]\x0d\x0a\x0d\x0a创建表:\x0d\x0a\x0d\x0asql="CREATE TABLE [表名] ([字段1,并设置为主键] int IDENTITY (1, 1) NOT NULL CONSTRAINT PrimaryKey PRIMARY KEY,"&\x0d\x0a\x0d\x0a"[字段2] varchar(50),"&\x0d\x0a\x0d\x0a"[字段3] single default 0,"&\x0d\x0a\x0d\x0a"[字段4] varchar(100) null,"&\x0d\x0a\x0d\x0a"[字段5] smallint default 0,"&\x0d\x0a\x0d\x0a"[字段6] int default 0,"&\x0d\x0a\x0d\x0a"[字段7] date default date(),"&\x0d\x0a\x0d\x0a"[字段8] int default 1)"\x0d\x0a\x0d\x0aconn.execute sql\x0d\x0a\x0d\x0a有null 的表示字段允许零长 参考技术A 语法ALTER TABLE 表 ADD ADDCOLUMN 字段类型 [ (字长)] [NOT NULL] [CONSTRAINT 索引 ] |
ALTER COLUMN 字段类型 [(字长)] |
CONSTRAINT 多重字段索引 |
DROP DROPCOLUMN 字段 I CONSTRAINT 索引名
ALTER TABLE 语句分为以下几个部分:部分 说明table 欲修改的表之名称。
field 欲在表内增加或删除的字段的名称。或表内欲被替换的字段名称。
type 字段的数据类型。
size 字段的字符长度 (文本及二进制字段)。
indexname 欲删除的多重字段索引的名称。
说明使用 ALTER TABLE 语句,可用多种不同方法更改当前已存在的表:你可以:
使用 ADD COLUMN 在表中添加新的字段。需要指定字段名、数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一 25 个字符的、名为 Notes 的文本字段:
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT 子句主题。
如果对一字段指定 NOT NULL,则在这字段中添加的新记录必须有有效的数据。
使用ALTER COLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型, 被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段:
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
使用 ADD CONSTRAINT 添加多重字段索引。关于多重字段索引的详细信息,请参阅 CONSTRAINT 子句主题。
使用 DROP COLUMN 删除字段。只要指定欲删除的字段名即可。
使用 DROP CONSTRAINT 删除多重字段索引。只要在 CONSTRAINT 保留字后面指定索引名即可。
--------------------------------------------------------------------------------注意不能同时添加或删除一个以上的字段或索引。
你可以使用 CREATE INDEX 语句在一个表中增加一个单字段或多重字段,你还可以使用 ALTER TABLE 或 DROP 语句删除一个由ALTER TABLE或CREATE INDEX建立的索引。
可以在单一字段上使用 NOT NULL,或在用于单一字段或多重字段(名为 CONSTRAINT) 的 CONSTRAINT 子句中使用 NOT NULL。但是,一个字段只能使用一次 NOT NULL 限制。尝试多次应用此限制将导致运行错误。本回答被提问者采纳

以上是关于如何用sql语句把datetime类型字段改成float 类型字段的主要内容,如果未能解决你的问题,请参考以下文章

如何用SQL语句将数据库中的表的某一时间型字段的默认值设置为当前日期

如何用plsql语句把一个表的所有列都转换为字符型

如何用SQL语句查询一个数据表所有字段的类型

如何用SQL语句实现某个字段数为随机数?

mysql里面如何用sql语句让字符串的‘123’转换为数字的123?

如何用SQL语句修改一个表的字段,让它不能为空