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

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

 
date 一般不用来更新 create_dt 和update_dt, 一般用 current_timestamp
SELECT user, current_timestamp
 

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

Teradata SQL tips的更多相关文章

  1. Teradata SQL programming

    Teradata的SQL设计和Oracle真不是一个水平, 一点美感的没有.  上个世纪它靠着MPP一招鲜吃变天, 居然做了十多年数据仓库的老大,  时过境迁, 现在有不少SQL On Hadoop ...

  2. 【Teradata SQL】行转列函数TDStats.udfConcat

    TDstats.udfConcat为Teradata自带UDF,定义如下: show function tdstats.udfconcat; REPLACE FUNCTION tdstats.UDFC ...

  3. TERADATA SQL学习随笔<一>

    此博客内容简介及目录 http://www.cnblogs.com/weibaar/p/6644261.html 最近在TERADATA环境学习SQL.在这里记录一下学习中查过的知识点,作为备案. 目 ...

  4. 【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE

    STRTOK函数: 按照指定分隔符,将字符串分割成多个部分,返回指定部分字符串. 参数说明: (1)instring:字符串或字符串表达式. (2)delimiter:分隔符列表,字符串每个字符都会做 ...

  5. 【Teradata SQL】使用SQL将多个逗号分隔改为一个逗号分隔

    1.问题说明: //将如下字符串改为一个逗号分隔 张三,李四,王五,,,,,,六,,,,其,,,,,,,,,,,把 ==> 张三,李四,王五,六,其,把 2.解决方法 sel oreplace( ...

  6. Oracle SQL Tips

    左连接的同时只输出关联表的一条记录 WITH X AS (SELECT 1 ID FROM DUAL UNION SELECT 2 FROM DUAL UNION SELECT 3 FROM DUAL ...

  7. 【Teradata SQL】从中文数字字母混合字符串中只提取数字regexp_substr

    目标:从中文数字字母的字符串中只提取数字 sel regexp_substr('mint choc中文11国1','\d+')

  8. 【Teradata SQL】一个字段为空即取另外一个字段(连续取4个字段)-case when

    目标:如果col1为空则取col2的值,如果col2也为空则取col3的值,如果col3还为则取col4的值,如果四个字段均为空则取默认值 1.数据准备 create multiset table t ...

  9. 【Teradata SQL】日历函数查询

    查询2018年agmt_id=1076226890174464676612的,且金额类型代码为0212,每日协议金额. 1.协议金额历史表取某一日数据(20180101) sel t.start_dt ...

随机推荐

  1. 关于JAVA应用中文字体显示小方框的问题解决

    最近碰到linux下jboss应用中中文字体显示为小方框: “在JRE 5以上的java环境中,java会自动加载$JAVA_HOME/jre/lib/fonts目录下的字体.链接或复制宋体或微软雅黑 ...

  2. You are note Hk

    直接打开是forbidden  最后一句话提示 于是改包 第二次还是修改包 Mozilla/5.0 (MSIE 7.0; Windows NT 6.0;.NET CLR 9.9)

  3. Android 屏幕适配(一)百分比布局库(percent-support-lib) 解析与扩展

    转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/46695347: 本文出自:[张鸿洋的博客] 一.概述 周末游戏打得过猛,于是周 ...

  4. 21Spring_JdbcTemplatem模板工具类的使用——配置文件(连接三种数据库连接池)

    上一篇文章提到过DriverManagerDataSource只是Spring内置的数据库连接池,我们可选的方案还有c3p0数据库连接池以及DBCP数据库连接池. 所以这篇文章讲一下上面三种数据库连接 ...

  5. mac终端命令大全介绍

    OSX 的文件系统 OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念. 你在桌面上看到的硬盘都挂在 /Volumes 下. 比如接上个叫做 US ...

  6. winform listbox与textbox组合提示框 模糊查询

      private void listbox1_MouseClick(object sender, MouseEventArgs e)        {            textbox1.Vis ...

  7. C++ c++与C语言的区别(实用性增强,register关键字增强,全局变量检测增强)

    //区别①:实用性增强 #include<iostream> using namespace std; //C语言中的变量都必须在作用域开始的位置定义!! //C++中更强调语言的“实用性 ...

  8. C#实现对指定文件夹中文件按修改时间排序

    string path = "~/Document/Introduction/团队管理制度/";            DirectoryInfo dirinfo = new Di ...

  9. struts 2.5.5 通配符问题

    问题:使用通配符会报错,找不到action. 问题原因: struts2.5 为了增加安全性,在 struts.xml 添加了这么个属性:<global-allowed-methods>r ...

  10. 证书与keytool

    证书的来源与使用: 对数据进行签名是我们在网络中最常见的安全操作.签名有双重作用,作用一就是保证数据的完整性,证明数据并非伪造,而且在传输的过程中没有被篡改,作用二就是防止数据的发布者否认其发布了该数 ...