Teradata SQL tips

Question:

Insert into table_name  (1),(2),....

Teradata 貌似不能同时插入,只能一条一条插入,报错。

后来改为:

Insert into table_name (1);

Insert into table_name (2);

Insert into table_name (3);

...

就可以了。  但是不确定 是不是不能同时插入,还没找到确切的证据!!!

-------------------------------------------------------------

1. 系统变量

SELECT date,  time, user, database

-- 当前系统日期, 系统时间, 当前登陆的用户, 当前缺省的数据库

Teradata 点滴-- 1 - 寻走的人 - 自由、随心、求真
 
date 一般不用来更新 create_dt 和update_dt, 一般用 current_timestamp
SELECT user, current_timestamp
Teradata 点滴-- 1 - 寻走的人 - 自由、随心、求真
 

2. Extract

Teradata中EXTRACT函数支持日期数据中选取年.月.日.从时间数据中选取小时.分钟和秒

SELECT DATE;                                                   11/07/2014

SELECT EXTRACT(YEAR FROM DATE);      2014

SELECT EXTRACT(MONTH FROM DATE);  11

SLEECT EXTRACT(DAY FROM DATE);        07

SELECT EXTRACT(MONTH FROM DATE + 17);   12, 先date加17天,再计算month

SLEECT EXTRACT(MONTH FROM DATE) + 17;    29, 先计算month,再加上17

-----------------

SELECT TIME; 14:52:32

SELECT EXTRACT(HOUR FROM TIME); 14

SELECT EXTRACT(SECOND FROM TIME+30

---------------------------------------------------------------

时间差处理,+-interval

例如

SEL current_timestamp,

        current_timestamp + interval '1' YEAR         -- 年+1

       current_timestamp + interval '1' MONTH      -- 月+1

       current_timestamp + interval '1' DAY            -- 日+1

       current_timestamp + interval '1' HOUR         -- 时+1

       current_timestamp + interval '1' MINUTE      -- 分+1

 

3.输入参数

sp:    (IN test_variable INTEGER)

 调用时,写  : test_variable 

----比如: WHERE group_id = : group_id

 

4. 调用/run某个sp

 call dtv_iap_stage.rpt_run_prodqc_group(3)  -- 跑group_id 为3的QC report

 

5. Teradata 里面的NULL 值显示为 ?

    如果要把NULL 值转化为其他的,用COALESCE (num, 0)  把num中的NULL 值转化为 0


6. 有时候遇到一个关键词作为列名或者表名,

这时候识别时会出现UDFCALLNAME 错误,只要加上"" 双引号即可。

比如SELECT  *  FROM DTV_TARGET. "ACCOUNT"

 

7 Teradata 里面怎么copy表,(相当于select into)

CREATE TABLE new_name AS

(SELECT

--指明列名) WITH NO DATA;  -- copy 表结构

                     WITH DATA;  -- copy 表结构和values

此时默认的是 SET table,不允许duplicates

若要保持数据一致,CREATE MULTISET table 即可,保留duplicates

posted on 2016-04-08 16:48  Suckseedeva 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/skyEva/p/5368811.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值