想与不想
早两天,晚上睡不着觉,脑袋里不断蹦出各类想法,于是我试图让自己不想,各种办法都试了(数星星,数羊...),全无效。这让我我想起了一个故事,我索性拼命想,想着想着我就睡着了...[@more@]有一个流传已久的故事:在古老的喜马拉雅王国里,有一个刚出家的僧侣,正为第一次见到他的上师感到兴奋又期待。他有满脑子的问题想问,却又觉得现在不是个一好时机,因此他忍下来,并且仔细聆听上师对他的教导。上师的话很简要:「明天一早起床,爬到这座山的山顶,你会发现一个洞穴。我要你在那里从早上坐到黄昏,什么都不要想,尽你所能赶走自己
Teradata新特性之reset when使用
一同事问如何用SQL获取各区域用户数连续增长的天数。想到Teradata新特性中的reset when正好可以实现此功能。下面是我的测试案例,分享给大家:[@more@] Step 1: CREATE the FOLLOWING TABLE: CREATE TABLE Test.Reset_when_Monthly_Sales ( SalesMonth INTEGER , Sales INTEGER ) UNIQUE PRIMARY INDEX (SalesMonth) ; -- Completed. 0 rows processed. Step 2: Populate the TABLE AS follows: INSERT INTO Test.Reset_when_Monthly_Sales VALUES (1, 4500) ; INSERT INTO Test.Reset_when_Monthly_Sales VALUES
Teradata TPT处理Unicode方法
使用TPT做数据同步时报错:TPT12108: Output Schema does not match data from SELECT statement。测试发现,同步不包含Unicode字符集的表时,没有任何问题,同步包含Unicode字符集的表示,提示上述错误。那么,该问题怎么解决呢?[@more@] 上述错误的原因可以解释为:There is a schema mismatch between the schema defined in TPT script and the schema returned from the select request sent to DBS. 要避免此问题其实比较简单,你只需要设置与session字符集相匹配的字段长度即可: 如果你在TPT脚本中将session的字符集设置为U
获取Teradata表访问频率信息
在日常维护及系统优化过程中,我们有时需要分析哪些数据库对象是使用频率较高的,哪些对象是长期不用的,从而有依据的制定优化策略。对访问频率高的,尽量做到物理模型最优(如PI是最经常用来关联的,数据分布是均匀的等)。而那些长期不用的对象(表/视图),可以考虑删除。使用频率高的字段和使用频率低的字段进行表拆分...那么如何获取Teardata表/视图/字段的访问频率信息呢?下面做详细说明:[@more@] 按照下列步骤打开/关闭开关:1、 用secureCRT类的工具连接到数据库节点机;2、 输入cnsterm 6 打开窗口6;3、 输入 start db
用trim去掉字符串末尾的任意字符
一朋友问到,如何去掉字符串末尾的指定字符。当然,方法很多,最易想到的是用UDF,将指定字符替换为空串。其实,不用这么麻烦,teradata提供的trim函数就可以很简单的实现这一功能:[@more@]SELECT 'aabcdedcbaa' AS a,TRIM(BOTH 'a' FROM a) --去掉前后的a字符,TRIM(LEADING 'a' FROM a) --去掉开头的a字符,TRIM(TRAILING 'a' FROM a) --去掉结尾的a字符;
Teradata时间操作
最近,很多朋友问到Teradata时间的处理,并且差不多是一个问题--时间差操作。大家都在做什么呢?下面用一个SQL来说明此类问题,供参考:SEL CURRENT_TIMESTAMP ,CURRENT_TIMESTAMP + INTERVAL '1' YEAR,CURRENT_TIMESTAMP - INTERVAL '1' MONTH,CURRENT_TIMESTAMP - INTERVAL '1' DAY,CURRENT_TIMESTAMP - INTERVAL '1' HOUR,CURRENT_TIMESTAMP - INTERVAL '1' MINUTE;下面为时间相关的其它操作:http://miguelmin.itpub.net/post/38274/476094[@more@]