随笔分类 - DB2
摘要:SYSIBM: 基本系统编目,不建议直接访问SYSCAT: 默认授权给Public组.只读编目视图,一般通过这个来获取编目信息SYSSTAT: 可更新编目视图,会影响优化器的优化策略SYSFUN: 用户定义函数SYSPROC: 存放一组系统的存储过程 工作中一般用到SYSCAT这个视图,内置参数有
阅读全文
摘要:参考的博文出处:http://www.cnblogs.com/luhe/p/4155612.html,对博文进行了修改新增,修改了错误的地方 之前用过row_number(),rank()等排序与over( partition by ... ORDER BY ...),这两个比较好理解: 先分组,然
阅读全文
摘要:DB2命令窗口和命令行处理器实际上都是CMD命令窗口生成的,具体区别如下 菜单与可执行文件的对应关系 D:\Program Files\IBM\SQLLIB\BIN\ DB2 命令窗口 - Administrator < > db2cwadmin.bat DB2 命令窗口 < > DB2CW.BAT
阅读全文
摘要:ALTER TABLE tablename APPEND ON|OFF ON:新添加的数据将会插入到有空闲空间的页中; OFF:新增加的数据存放到最后一个页上,若该页存放满了,则数据将会存放到下一个页上。 数据的最小存放空间为页(page),页大小有4K,8K,16K,32K。 PS:在db2中,表
阅读全文
摘要:一、临时表 临时表(TEMPORARY TABLE)通常应用在需要定义临时集合的场合。但是,在大部分需要临时集合的时候,我们根本就不需要定义临时表。当我们在一条SQL语句中只使用一次临时集合时,我们可以使用嵌套表表达式来定义临时集合;当我们在一条SQL语句中需要多次使用同一临时集合时,我们可以使用公
阅读全文
摘要:db2 中通过查询结果来create table 的3种方式 Q:想通过DB2把查询出来的结果定义为别的表,因为db2没有类似(或者说对db2还不熟悉)oracle的create table as select来定义表的方式,所以比较麻烦! 今天抽时间总结了一下DB2定义表的3种方式: 首先创建一个
阅读全文
摘要:如果是在Linux上刚装完DB2即刻建立database,可能会遇到错误DB21019E An error occurred while accessing the directory "/root". 该错误原因为使用“su username”而非“su - username”在终端切换用户,前者
阅读全文
摘要:比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID FROM Orders o WHERE o.CustomerID=c.CustomerID) 这里
阅读全文
摘要:如果 多张表里只有一张表里 有这个字段 不加别名 也能识别
阅读全文
摘要:静态游标在打开时会将数据集存储在tempdb中,因此显示的数据与游标打开时的数据集保持一致,在游标打开以后对数据库的更新不会显示在游标中。 动态游标在打开后会反映对数据库的更改。所有UPDATE、INSERT 和 DELETE 操作都会显示在游标的结果集中,结果集中的行数据值、顺序和成员在每次提取时
阅读全文
摘要:在DB2中从客户端访问服务器端的数据库时,不能直接用connect命令,而必须先建立通信node,再在node的基础上建立数据库连接。在命令行的具体操作如下: ->db2 catalog tcpip node ABC remote serverName server 50000 ->db2 cata
阅读全文
摘要:1、row_number() over()排序功能: (1) row_number() over()分组排序功能: 在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where group by order by 的执行。 partition by 用
阅读全文
摘要:在db2中如果想获取前n行,只要加上fetch first n rows only 就可以了,但在oracle中没有fetch,网上很多人说可以用oracle的rownum<=n来替代db2的fetch first n rows only,但这样的替换,在对结果集需要进行order by之后再获取前
阅读全文
摘要:DB2支持session临时表. 该表只能存在于某一session或某一交易上下文中,对其他用户不可见. DB2 V8增加了对临时表的索引的支持, 这对于提升查询速度比较有意义; 下面举例子来说明session临时表的使用: 1. 在创建session临时表前, 您必须创建临时表空间 create
阅读全文
摘要:ALTER TABLE ....ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE DROP TABLE 的区别。感觉比较奇怪。 DROP TABEL: 彻底删除一个表,包括表的定义。 ALTER TABLE ....ACTIVATE NOT LOGGED
阅读全文
摘要:SYSCAT.TABLES catalog view Each row represents a table, view, alias, or nickname. Each table or view hierarchy has one additional row representing the
阅读全文
摘要:1、db2可以通过SYSIBM.SYSDUMMY1、SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值。 2、CURRENT DATE获取当前日期;CURRENT TIME获取当前时间;CURRENT TIMESTAMP获取当前时间戳(含年、月、日、时、分、秒)。
阅读全文
摘要:存储过程中的if then 语法 IF A > B THEN ...ELSEIF A = B THEN ...ELSE ...END IF 举例来说 执行顺序: 判断v_lx 变为大写后是不是'V' 是的话进行判断下一个if判断,不是的话什么也不做,我们区分是不是同一个if的话也是用end if 来
阅读全文
摘要:一、判断函数 exists(A)函数 判断是否存在,存在数据返回true,不存在返回false 先记住怎么用,不懂 1、不关联情况下,内表有数据,用not exists查不到 不关联不带入去检验,判断里面是否查询出来返回为true或者false 2、关联情况下,内表有数据,not exists查询的
阅读全文
摘要:可使用 SET 语句或 SELECT INTO 语句将值指定给变量,也可在声明变量时将其指定为缺省值。可对变量指定字面值、表达式、查询结果和专用寄存器值。 可将变量值指定给 SQL 过程参数或 SQL 过程中的其他变量,也可在例程内执行的 SQL 语句中将变量值作为参数引用。 1、set赋值 2、s
阅读全文