DB2中的日期和时间.

DB2中的日期和时间(v 1.0)版本说明目录DB2中的日期和时间 (1)版本说明 (2)目录 (3)1 基础知识 (4)2 日期函数 (6)3 修改日期格式 (8)4自定义日期/时间格式 (9)5 小结 (13)6 参考资料: (13)1 基础知识为了用SQL语句得到当前的日期,时间和时间戳,可以使用相应的DB2寄存器:db2 “SELECT current date FROM sysibm.sysdummy1”结果:1----------03/08/20071 record(s) selected.db2 “SELECT current time FROM sysibm.sysdummy1”db2 “SELECT current timestamp FROM sysibm.sysdummy1”sysibm.sysdummy1表是一个在内存中特殊的表,可以使用上面的语句得到DB2寄存器的值。

您也还可以用关键字VALUES来获取寄存器中的值。

例如,在DB2命令行处理器中,可以用下面的SQL语句获取同样的信息:VALUES current dateVALUES current timeVALUES current timestamp结果1--------------------------2007-03-08-11.32.57.0766971 record(s) selected.在下面的示例中,我将只提供函数或表达式,而不再重复 SELECT ... FROM sysibm.sysdummy1 或使用VALUES子句。

要使当前时间或当前时间戳调整到格林威治标准时间(GMT/CUT),可以把当前的时间或时间戳减去当前时区寄存器:current time - current timezonecurrent timestamp - current timezone结果:1--------------------------2007-03-08-03.36.41.1566021 record(s) selected.给定了日期、时间或时间戳,则使用适当的函数抽取出(如果适用的话)年、月、日、时、分、秒及微秒各部分:YEAR"(current timestamp)"MONTH"(current timestamp)"DAY"(current timestamp)"HOUR"(current timestamp)"MINUTE"(current timestamp)"SECOND"(current timestamp)"MICROSECOND"(current timestamp)"从时间戳单独抽取出日期和时间:date"(current timestamp)"time"(current timestamp)"还可以使用英语(因为没有更好的术语)来执行日期和时间计算:current date + 1 YEARcurrent date + 3 YEARS + 2 MONTHS + 15 DAYScurrent time + 5 HOURS - 3 MINUTES + 10 SECONDS要计算两个日期之间相差的天数,可以对日期作减法,例如:days"(current date)"-days"(date('1999-10-22'))返回值:2694而以下示例描述了如何获得微秒部分归零的当前时间戳记:CURRENT TIMESTAMP - MICROSECOND"(current timestamp)" MICROSECONDS返回值:2007-03-08-14.23.34.000000如果想将日期或时间值与其它文本相衔接,那么需要先将该值转换成字符串。

为此,可以方便地使用CHAR()函数:char(current date)char(current time)char(current date + 12 hours)要将字符串转换成日期或时间值,可以使用:TIMESTAMP ('2002-10-20-12.00.00.000000')TIMESTAMP ('2002-10-20 12:00:00')DATE ('2002-10-20')DATE ('10/20/2002')TIME ('12:00:00')TIME ('12.00.00')TIMESTAMP()、DATE()和TIME()函数接受更多种格式。

上面几种格式只是示例。

如果在DATE函数中忘记加单引号会发生什么呢?函数依然可以执行,可是结果是错的:SELECT DATE"(2001-09-22)" FROM SYSIBM.SYSDUMMY1;结果:======05/24/0006为什么会有2000多年的差别呢?当日期DATE函数读取字符作为输入的时候,它会将它转换为相应的DB2日期;如果读取的是数字,就会把其转换为从0001-01-01日起到该数字的那一天,上面的例子中,2001-09-22=1970,也就是0001-01-01后的第1970天。

2 日期函数有时,可能需要知道两个时间戳记之间的时差。

为此,DB2 提供了一个名为TIMESTAMPDIFF()的内置函数。

但该函数返回的是近似值,因为它不考虑闰年,而且假设每个月只有30 天。

以下示例描述了如何得到两个日期的近似时差:timestampdiff"(<n>,char(timestamp('2002-11-30-00.00.00')-timestamp('2 002-11-08-00.00.00')))"对于 <n>,可以使用以下各值来替代,以指出结果的时间单位:1 = 秒的小数部分2 = 秒4 = 分8 = 时16 = 天32 = 周64 = 月128 = 季度256 = 年当日期很接近时使用timestampdiff()比日期相差很大时精确。

如果需要进行更精确的计算,可以使用以下方法来确定时差(按秒计):(DAYS(t1) - DAYS(t2)) * 86400 + (MIDNIGHT_SECONDS(t1) -MIDNIGHT_SECONDS(t2))为方便起见,还可以对上面的方法创建SQL用户自定义函数:CREATE FUNCTION secondsdiff(t1 TIMESTAMP, t2 TIMESTAMP)RETURNS INTRETURN ((DAYS(t1) - DAYS(t2)) * 86400 + (MIDNIGHT_SECONDS(t1) - MIDNIGHT_SECONDS(t2)))@如果需要确定给定年份是否是闰年,创建以下函数来确定给定年份的天数:CREATE FUNCTION daysinyear(yr INT)RETURNS INTRETURN (CASE (mod(yr, 400)) WHEN 0 THEN 366 ELSECASE (mod(yr, 4)) WHEN 0 THENCASE (mod(yr, 100)) WHEN 0 THEN 365 ELSE 366 ENDELSE 365 ENDEND)@最后,以下是一张用于日期操作的内置函数表。

它旨在帮助您快速确定可能满足您要求的函数,但未提供完整的参考。

有关这些函数的更多信息,请参考SQL Reference。

SQL日期和时间函数:✓DAYNAME :返回一个大小写混合的字符串,对于参数的日部分,用星期表示这一天的名称(例如,Friday)。

✓DAYOFWEEK: 返回参数中的星期几,用范围在 1-7 的整数值表示,其中 1 代表星期日。

✓DAYOFWEEK:_ISO 返回参数中的星期几,用范围在 1-7 的整数值表示,其中1 代表星期一。

✓DAYOFYEAR: 返回参数中一年中的第几天,用范围在 1-366 的整数值表示。

DAYS: 返回日期的整数表示。

✓JULIAN_DAY: 返回从公元前 4712 年 1 月 1 日(儒略日历的开始日期)到参数中指定日期值之间的天数,用整数值表示。

✓MIDNIGHT_SECONDS: 返回午夜和参数中指定的时间值之间的秒数,用范围在0 到 86400 之间的整数值表示。

✓MONTHNAME: 对于参数的月部分的月份,返回一个大小写混合的字符串(例如,January)。

✓TIMESTAMP_ISO: 根据日期、时间或时间戳记参数而返回一个时间戳记值。

✓TIMESTAMP_FORMAT: 从已使用字符模板解释的字符串返回时间戳记。

✓TIMESTAMPDIFF: 根据两个时间戳记之间的时差,返回由第一个参数定义的类型表示的估计时差。

✓TO_CHAR: 返回已用字符模板进行格式化的时间戳记的字符表示。

TO_CHAR: 是 VARCHAR_FORMAT 的同义词。

✓TO_DATE: 从已使用字符模板解释过的字符串返回时间戳记。

TO_DATE 是TIMESTAMP_FORMAT 的同义词。

✓WEEK: 返回参数中一年的第几周,用范围在 1-54 的整数值表示。

以星期日作为一周的开始。

✓WEEK_ISO: 返回参数中一年的第几周,用范围在 1-53 的整数值表示。

3 修改日期格式默认的日期格式由数据库的数据库国家/地区代码(TERRITORY CODE)决定(数据库国家/地区代码是在数据库创建时确定的)。

例如,在创建数据库时由数据库国家/地区代码US创建的,时间格式的输出如下:values current date1----------03/08/20071 record(s) selected.即时间格式为DD/MM/YYYY。

如果希望修改格式,您需要使用不同的时间格式重新联编DB2工具包。

支持的格式有:✓DEF 使用和数据库国家/地区代码相关的日期时间格式。

✓EUR 使用IBM欧洲标准日期时间格式。

✓ISO 使用ISO日期时间格式。

✓JIS 使用日本工业标准日期时间格式。

✓LOC 使用和数据库国家/地区代码结合的本地日期时间格式。

✓USA 使用IBM美国标准时间日期格式。

使用下面的步骤修改时间日期格式为ISO格式(YYYY-MM-DD):1. 在命令行下,更改到sqllib\bnd目录。

合集下载

db2获取年月的方法 -回复

db2获取年月的方法 -回复

db2获取年月的方法-回复Db2是一种关系型数据库管理系统,被广泛应用于企业级应用程序开发。

在使用Db2的过程中,经常需要获取年月数据,并对其进行处理和分析。

本文将详细介绍如何使用Db2获取年月数据的方法,以及一些常用的处理和分析技巧。

首先,我们需要了解在Db2中如何表示年月数据。

在Db2中,通常使用DATE或TIMESTAMP数据类型来表示日期和时间。

DATE类型只表示年月日,而TIMESTAMP类型则包含年月日和时分秒。

根据具体需求,我们可以选择使用其中之一来表示年月数据。

1. 获取当前年月获取当前年月是在数据处理中一项常见的需求。

在Db2中,可以使用CURRENT_DATE或CURRENT_TIMESTAMP函数来获取当前的日期和时间。

我们可以通过截取函数来获取年月数据。

例如,使用CURRENT_DATE函数获取当前日期,并使用DATE函数将其转换为DATE类型:SELECT DATE(CURRENT_DATE) FROM SYSIBM.SYSDUMMY1;运行以上SQL语句后,将返回当前的日期,格式为YYYY-MM-DD。

我们可以通过使用SUBSTR函数来截取年月数据:SELECT SUBSTR(CHAR(DATE(CURRENT_DATE)), 1, 7) FROM SYSIBM.SYSDUMMY1;上述SQL语句将返回当前的年月,格式为YYYY-MM。

这样,我们就成功地获取到了当前的年月数据。

2. 获取指定日期的年月在数据处理中,我们可能还需要获取指定日期的年月数据。

可以通过将日期转换为字符型,然后截取所需的年份和月份数据来实现。

例如,获取1970年11月的年月数据:SELECT SUBSTR(CHAR(DATE('1970-11-01')), 1, 7) FROM SYSIBM.SYSDUMMY1;上述SQL语句将返回1970年11月的年月数据,格式为YYYY-MM。

db2时间函数

db2时间函数

db2时间函数1. 介绍时间函数是数据库管理系统中的一种特殊函数,用于处理和操作日期和时间数据。

在DB2数据库中,有许多内置的时间函数可用于执行各种日期和时间操作。

这些函数提供了方便和灵活的方法来处理日期和时间,并支持各种常见的日期和时间计算。

2. 常用的时间函数以下是一些常用的时间函数,可以在DB2数据库中使用:2.1 CURRENT_DATECURRENT_DATE函数返回当前日期。

它返回一个日期值,表示当前系统日期。

2.2 CURRENT_TIMECURRENT_TIME函数返回当前时间。

它返回一个时间值,表示当前系统时间。

2.3 CURRENT_TIMESTAMPCURRENT_TIMESTAMP函数返回当前日期和时间。

它返回一个时间戳值,表示当前系统日期和时间。

2.4 DATEDATE函数用于从日期时间戳值中提取日期部分。

它接受一个时间戳值作为参数,并返回一个日期值。

2.5 TIMETIME函数用于从日期时间戳值中提取时间部分。

它接受一个时间戳值作为参数,并返回一个时间值。

2.6 TIMESTAMPTIMESTAMP函数用于将日期和时间组合成一个时间戳值。

它接受日期和时间值作为参数,并返回一个时间戳值。

2.7 YEARYEAR函数用于从日期或时间戳值中提取年份部分。

它接受一个日期或时间戳值作为参数,并返回一个整数值,表示年份。

2.8 MONTHMONTH函数用于从日期或时间戳值中提取月份部分。

它接受一个日期或时间戳值作为参数,并返回一个整数值,表示月份。

2.9 DAYDAY函数用于从日期或时间戳值中提取天数部分。

它接受一个日期或时间戳值作为参数,并返回一个整数值,表示天数。

2.10 HOURHOUR函数用于从时间或时间戳值中提取小时部分。

它接受一个时间或时间戳值作为参数,并返回一个整数值,表示小时。

2.11 MINUTEMINUTE函数用于从时间或时间戳值中提取分钟部分。

它接受一个时间或时间戳值作为参数,并返回一个整数值,表示分钟。

db2 sql 教程

db2 sql 教程
[color=blue:b36c9124a3]注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。[/color:b36c9124a3]添加主键:
Alter table tabname add primary key(col)
删除主键:
Alter table tabname drop primary key(col)
删除表:drop table tabname
3、表空间:
创建表空间:create tablespace tbsname pagesize 4k managed by database using (file ‘file’ size)
语法格式:
Rollback [work]
高级sql简单介绍
一、查询间使用运算词
A: UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
删除表空间:drop tablespace tbsname
4、索引:
创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
[color=blue:b36c9124a3]注:索引是不可更改的,想更改必须删除重新建。[/color:b36c9124a3]
表空间加入容器:alter tablespace tablespace_name add(file 'filename' size)

DB2中字符、数字和日期类型之间的转换

DB2中字符、数字和日期类型之间的转换
-----------------------------------------------------------
1 ,20 ,3000 ,00400044,055555.00
1 条记录已选择。
SQL>字符型到数字型的转换
数字型到字符型的转换
测试一下:
SQL>create table test_datatypeSQL>(SQL>col_a smallint,SQL>col_b integer,SQL>col_c bigint,SQL>col_d decimal(8,2),SQL>col_e doubleSQL>);DB20000I SQL命令成功完成。
-------------------- ----------- ------------------------------ -----------
501 SMALLINT 2 COL_A 5
DB2中的col_a字段
字段类型 数字类型 转换
char smallint Integer(trim(char(col_a)))
integer
bigint cast(char(col_a) as bigint)
decimal cast(col_a as decimal(8,2))
SQL>select * from test_datatype;COL_A COL_B COL_C COL_D COL_E
------ ----------- -------------------- ---------- ------------------------
---------- -------- --------------------------

db2获取年月的方法 -回复

db2获取年月的方法 -回复

db2获取年月的方法-回复DB2是IBM公司开发的一种关系型数据库管理系统(RDBMS),在企业信息系统中被广泛应用。

在DB2中,我们可以使用多种方法来获取年月信息。

本文将针对这一问题进行详细介绍,并提供一步一步的方法。

一、使用当前日期函数获取年月信息:DB2提供了一个当前日期函数CURRENT_DATE,它可以返回系统当前的日期。

我们可以使用CURRENT_DATE函数来获取当前的年月信息。

1. 创建一个数据库连接:首先,我们需要在DB2中创建一个合适的数据库连接,以便能够连接到数据库并执行相应的SQL语句。

2. 编写SQL语句:接下来,我们需要编写一个SQL查询语句来获取当前的年月信息。

假设我们有一个名为"orders"的表,其中包含一个名为"order_date"的列,该列记录了订单的日期。

我们可以使用如下的SQL语句来获取当前的年月信息:SELECT YEAR(order_date) AS year, MONTH(order_date) AS month FROM orders在这个语句中,YEAR和MONTH函数分别用于提取日期中的年份和月份。

3. 执行SQL语句并获取结果:接下来,我们可以执行上述SQL语句,并获取结果。

在DB2中,可以使用命令行工具、控制台应用程序或其他DB2客户端工具来执行SQL语句。

执行SQL语句后,我们将会得到一个结果集,其中包含了当前的年月信息。

我们可以将结果集返回给应用程序,或者直接在DB2客户端工具中进行查看。

二、使用日期操作函数获取年月信息:除了使用CURRENT_DATE函数之外,我们还可以使用其他的日期操作函数来获取年月信息。

DB2提供了一些强大的日期操作函数,可以简化我们的操作并提供更丰富的功能。

1. 创建一个数据库连接:同样,我们需要在DB2中创建一个合适的数据库连接,以便能够连接到数据库并执行相应的SQL语句。

db2常用命令(详解)大全

db2常用命令(详解)大全

db2常⽤命令(详解)⼤全近⼀年来在项⽬开发中使⽤到了IBM的DB2 9.1的数据库产品,跟Oracle相⽐⼀些命令有很⼤的区别,⽽它最⼤的功能是⽀持xml存储、检索机制,通过XPath进⾏解析操作,使开发⼈员免于对xml⽂件在应⽤进⾏解析处理,先对其常⽤命令进⾏⼀下汇总,以免遗忘。

注意:在执⾏如下命令时,需要⾸先安装db2客户端并通过在运⾏中输⼊db2cmd进⾏初始化⼀、基础篇1、db2 connect to <数据库名> --连接到本地数据库名db2 connect to <数据库名> user <⽤户名> using <密码> --连接到远端数据库2、 db2 force application all --强迫所有应⽤断开数据库连接3、db2 backup db db2name<数据库名称> --备份整个数据库数据db2 restore db <db2name> --还原数据库4、db2 list application --查看所有连接(需要连接到具体数据库才能查看)5、db2start --启动数据库db2stop --停⽌数据库6、create database <数据库名> using codeset utf-8 territory CN--创建数据库使⽤utf-8编码7、db2 catalog 命令db2 catalog tcpip node <接点名称> remote <远程数据库地址> server <端⼝号>--把远程数据库映射到本地接点⼀般为50000db2 catalog db <远程数据库名称> as <接点名称> at node PUB11--远程数据库名称到本地接点db2 CONNECT TO <接点名称> user <⽤户名> using <密码>--连接本地接点访问远程数据库8、数据库导出db2look -d <数据库名> -u <⽤户> -e -o <脚本名称>.sql--导出数据库的表结构,其中⽤户空间⼀般为db2admin/db2inst1db2look -d <数据库名> -u <⽤户> -t <表1> <表2> -e -o <脚本名称>.sql--导出数据库中表1和表2的表结构db2move <数据库名> export --导出数据库数据db2move <数据库名> export -tn <表1>,<表2> --导出数据库中表和表数据 db2move dbname export;db2move dbname import db2move bipdbrun export -sn app -u app -p app9、数据库导⼊db2 -tvf <脚本名称>.sql --把上述导出的表结构导⼊到数据库表结构db2move <数据库名> load -lo replace --把上述“db2move <数据库名> export“导出的数据导⼊到数据库中并把相同的数据替换掉在实际使⽤过程中,如果⽤到db2⾃增主键,需要使⽤by default,⽽不是always,功能是⼀样的,但这样在数据移植时候会很⽅便!10、db2 connect reset 或 db2 terminate --断开与数据库的连接11、db2set db2codepage=1208 --修改页编码为120812、db2 describe table <表名> --查看表结构13、db2 list tables --查看数据库中所有表结构list tables for system --列出所有系统表14、db2 list tablespaces --列出表空间⼆、⾼级篇15、fetch first 10 rows only --列出表中前10条数据例如:select * from <表名> fetch first 10 rows only16、coalesce(字段名,转换后的值) --对是null的字段进⾏值转换例如:select coalesce(id,1) from <表名> --对表中id如果为null转换成117、dayofweek(⽇期) --计算出⽇期中是周⼏(1是周⽇,2是周⼀.......7是周六)dayofweek_iso --计算出⽇期中是周⼏(1是周⼀.......7是周⽇)例如:dayofweek(date(2008-01-16)) --它会返回是4,代表星期三dayofweek_iso(date(2008-01-16)) --它会返回是3,代表星期三18、dayofyear(⽇期) --⼀年中的第⼏天,范围在1-366范围之内注意:参数中⽇期的格式是YYYY-MM-DD的形式,如果不是需要进⾏转换,否则函数不能使⽤例如:⽇期是20080116必须要进⾏转换dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(openDate,7,2)))as week)这样格式正确的。

db2时间函数

db2时间函数DB2是一种关系型数据库管理系统,它提供了许多时间函数来处理日期和时间数据。

这些时间函数可以帮助用户在DB2中进行时间计算和处理,从而更好地管理和分析数据。

下面是一些常用的DB2时间函数:1. CURRENT_DATE:返回当前日期,格式为YYYY-MM-DD。

2. CURRENT_TIME:返回当前时间,格式为HH:MM:SS。

3. CURRENT_TIMESTAMP:返回当前日期和时间,格式为YYYY-MM-DD HH:MM:SS。

4. DATE:将日期字符串转换为日期类型。

5. DAY:返回日期中的天数。

6. MONTH:返回日期中的月份。

7. YEAR:返回日期中的年份。

8. HOUR:返回时间中的小时数。

9. MINUTE:返回时间中的分钟数。

10. SECOND:返回时间中的秒数。

11. TIMESTAMP:将日期和时间字符串转换为时间戳类型。

12. WEEK:返回日期所在的周数。

13. WEEKDAY:返回日期所在的星期几。

14. DAYS:计算两个日期之间的天数差。

15. MONTHS:计算两个日期之间的月数差。

16. YEARS:计算两个日期之间的年数差。

这些时间函数可以在SELECT语句中使用,以便在查询结果中显示日期和时间数据。

例如,以下查询将返回当前日期和时间:SELECT CURRENT_TIMESTAMP FROM SYSIBM.SYSDUMMY1;此外,时间函数还可以在WHERE子句中使用,以便根据日期和时间数据过滤查询结果。

例如,以下查询将返回所有在当前月份之后创建的订单:SELECT * FROM ORDERS WHERE MONTH(CREATE_DATE) > MONTH(CURRENT_DATE);总之,DB2时间函数是处理日期和时间数据的有用工具。

它们可以帮助用户更好地管理和分析数据,从而提高数据库的效率和可靠性。

db2中date类型

db2中date类型
在DB2中,DATE是一种用于存储日期值的数据类型。

DATE数据类型用于表示年、月和日的日期值,不包括时间部分。

在DB2中,DATE类型的格式通常为YYYY-MM-DD,其中YYYY表示年份,MM表示月份,DD表示日期。

DATE类型的字段可以用于存储生日、入职日期等只涉及日期而不涉及时间的信息。

使用DATE类型的字段时,可以进行日期相关的操作,比如计算日期之间的差值、比较日期的先后顺序等。

在DB2中,可以使用一些内置的函数来处理DATE类型的数据,比如DATE函数用于将字符串转换为日期,CURRENT DATE函数用于获取当前日期等。

另外,在DB2中,DATE类型也可以与其他日期和时间类型进行转换和比较,比如与TIMESTAMP类型进行比较或者进行加减操作。

这样可以方便地处理涉及日期和时间的复杂业务逻辑。

总的来说,DATE类型在DB2中是用于存储日期值的数据类型,它提供了方便的日期操作和与其他日期时间类型的兼容性,能够满足各种日期相关的业务需求。

db2 timestamp 函数

db2 timestamp 函数DB2是一个关系型数据库管理系统,它被广泛应用于企业级应用程序中。

DB2提供了许多内置函数,用于执行各种操作和计算。

其中,timestamp 函数用于处理日期和时间数据。

本文将逐步解释DB2的timestamp函数,并说明如何使用它进行日期和时间操作。

1. 什么是timestamp函数?timestamp函数是DB2中与日期和时间相关的函数之一。

它接受日期和时间作为输入,并返回一个包含日期和时间信息的特定格式的字符串。

timestamp函数可以在SELECT语句中使用,也可以在INSERT或UPDATE语句中使用。

2. timestamp函数的语法是什么?timestamp函数的基本语法如下:TIMESTAMP (expression1 [AS timezone-expression])其中,expression1是一个表示日期和时间的输入表达式。

timezone-expression是一个可选的参数,用于指定时区信息。

如果省略时区参数,timestamp函数将根据数据库配置的默认时区进行操作。

3. timestamp函数的用途是什么?timestamp函数的主要用途是执行日期和时间相关的计算和操作。

它可以用于以下方面:- 将日期和时间数据转换为特定字符串格式,用于显示或存储。

- 比较两个日期或时间,并确定它们的顺序。

- 添加或减去一定的时间量,以实现日期和时间的偏移。

- 提取日期部分或时间部分,以获取特定的信息。

4. 如何使用timestamp函数进行日期和时间转换?要将日期或时间转换为特定字符串格式,可以使用timestamp函数的以下用法之一:- SELECT TIMESTAMP(date_column) FROM table_name;- SELECT TIMESTAMP(time_column) FROM table_name;- SELECT TIMESTAMP(datetime_column) FROM table_name;在这些示例中,date_column,time_column和datetime_column是包含日期或时间数据的列名,table_name是包含这些列的表名。

DB2中的数据类型

DB2中的数据类型DB2中的数据类型DB2内置数据类型可以分成数值型(numeric)、字符串型(character string)、图形字符串(graphic string)、⼆进制字符串型(binary string)或⽇期时间型(datetime)。

还有⼀种叫做 DATALINK 的特殊数据类型。

DATALINK 值包含了对存储在数据库以外的⽂件的逻辑引⽤。

数值型数据类型包括 SMALLINT、INTEGER、BIGINT、DECIMAL(p,s)、REAL 和 DOUBLE。

所有数值都有符号和精度。

精度是指除符号以外的⼆进制或⼗进制的位数。

如果数字的值⼤于等于零,就认为符号为正。

*⼩整型,SMALLINT:⼩整型是两个字节的整数,精度为 5 位。

⼩整型的范围从 -32,768 到 32,767。

*⼤整型,INTEGER 或 INT:⼤整型是四个字节的整数,精度为 10 位。

⼤整型的范围从 -2,147,483,648 到 2,147,483,647。

*巨整型,BIGINT:巨整型是⼋个字节的整数,精度为 19 位。

巨整型的范围从 -9,223,372,036,854,775,808 到9,223,372,036,854,775,807。

*⼩数型,DECIMAL(p,s)、DEC(p,s)、NUMERIC(p,s) 或 NUM(p,s):⼩数型的值是⼀种压缩⼗进制数,它有⼀个隐含的⼩数点。

压缩⼗进制数将以⼆-⼗进制编码(binary-coded decimal,BCD)记数法的变体来存储。

⼩数点的位置取决于数字的精度(p)和⼩数位(s)。

⼩数位是指数字的⼩数部分的位数,它不可以是负数,也不能⼤于精度。

最⼤精度是 31 位。

⼩数型的范围从 -10**31+1 到 10**31-1。

*单精度浮点数(Single-precision floating-point),REAL:单精度浮点数是实数的 32 位近似值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档