【问题标题】:Create Table variable datatype that would allow to save integer/floats [SQL]创建允许保存整数/浮点数的表变量数据类型 [SQL]
【发布时间】:2020-10-22 09:16:26
【问题描述】:

如标题所述,创建表时,定义变量+数据类型时:

CREATE TABLE ExampleTable{
ID INTEGER,
NAME VARCHAR(200),
Integerandfloat 
}

问题:您可以将变量定义为整数或浮点数等。但是,是否有一种数据类型可以同时保存整数和浮点数?

【问题讨论】:

  • SQL中的一列是一种数据类型,只有NoSQL才能在同一列中容纳更多的数据类型

标签: sql types numbers create-table


【解决方案1】:

某些数据库支持可以具有任意类型的变体数据类型。例如,SQL Server 有sql_variant

大多数数据库还允许您创建自己的数据类型(使用create type)。但是,该功能的强大程度取决于数据库。

对于浮点数和整数之间的选择,没有太多选择。 8 字节浮点表示涵盖所有 4 字节整数,因此您可以只使用浮点数。但是,float 在关系数据库中通常不是很有用。定点表示 (numeric/decimal) 更常见,也可以满足您的需求。

【讨论】:

    【解决方案2】:

    只需使用浮点数存储即可。

    这样想:你有两个变量,一个整数类型(我们称之为i)和另一个浮点类型(我们称之为f)。 如果你这样做:

    i = 0.55
    RESULT -> i = 0
    

    但如果你有:

    f = 0.55
    RESULT -> f = 0.55
    

    这样你也可以在 f 中存储整数值:

    f = 1
    RESULT -> f = 1
    

    【讨论】:

      猜你喜欢
      • 2013-08-24
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      相关资源
      最近更新 更多