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
-- 当前系统日期, 系统时间, 当前登陆的用户, 当前缺省的数据库


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的更多相关文章
- Teradata SQL programming
Teradata的SQL设计和Oracle真不是一个水平, 一点美感的没有. 上个世纪它靠着MPP一招鲜吃变天, 居然做了十多年数据仓库的老大, 时过境迁, 现在有不少SQL On Hadoop ...
- 【Teradata SQL】行转列函数TDStats.udfConcat
TDstats.udfConcat为Teradata自带UDF,定义如下: show function tdstats.udfconcat; REPLACE FUNCTION tdstats.UDFC ...
- TERADATA SQL学习随笔<一>
此博客内容简介及目录 http://www.cnblogs.com/weibaar/p/6644261.html 最近在TERADATA环境学习SQL.在这里记录一下学习中查过的知识点,作为备案. 目 ...
- 【Teradata SQL】字符串分割函数STRTOK和STRTOK_SPLIT_TO_TABLE
STRTOK函数: 按照指定分隔符,将字符串分割成多个部分,返回指定部分字符串. 参数说明: (1)instring:字符串或字符串表达式. (2)delimiter:分隔符列表,字符串每个字符都会做 ...
- 【Teradata SQL】使用SQL将多个逗号分隔改为一个逗号分隔
1.问题说明: //将如下字符串改为一个逗号分隔 张三,李四,王五,,,,,,六,,,,其,,,,,,,,,,,把 ==> 张三,李四,王五,六,其,把 2.解决方法 sel oreplace( ...
- Oracle SQL Tips
左连接的同时只输出关联表的一条记录 WITH X AS (SELECT 1 ID FROM DUAL UNION SELECT 2 FROM DUAL UNION SELECT 3 FROM DUAL ...
- 【Teradata SQL】从中文数字字母混合字符串中只提取数字regexp_substr
目标:从中文数字字母的字符串中只提取数字 sel regexp_substr('mint choc中文11国1','\d+')
- 【Teradata SQL】一个字段为空即取另外一个字段(连续取4个字段)-case when
目标:如果col1为空则取col2的值,如果col2也为空则取col3的值,如果col3还为则取col4的值,如果四个字段均为空则取默认值 1.数据准备 create multiset table t ...
- 【Teradata SQL】日历函数查询
查询2018年agmt_id=1076226890174464676612的,且金额类型代码为0212,每日协议金额. 1.协议金额历史表取某一日数据(20180101) sel t.start_dt ...
随机推荐
- R 语言assign 和get 函数用法
assign函数在循环时候,给变量赋值,算是比较方便 1.给变量赋值 for (i in 1:(length(rowSeq)-1)){ assign(paste("nginx_server_ ...
- jQuery on(),live(),trigger()
jQuery on()方法是官方推荐的绑定事件的一个方法. $(selector).on(event,childSelector,data,function,map); 由此扩展开来的几个以前常见的方 ...
- 01JavaIO详解_File类
对程序语言设计者来说,设计一个令人满意的I/O系统,是件极艰难的任务.——摘自Think in java 对java而言,File表示的是文件或目录.但是我们知道文件和目录是不一样的,文件里面存放的是 ...
- 百度BAE环境下WordPress搭建过程
参考: 文章一:http://capbone.com/bae-wordpress/ 文章二:http://tieba.baidu.com/p/2612184581 注意点: wordpress 下载地 ...
- LUA __call
1. ev={} . functin ev.__call() . print "called from ev" . end . . setmetatable(ev, ev) . . ...
- int 与Integer的用法与区别
1.int是基本类型,直接存取数值,Integer是对象,用一个引用指向这个对象. 2.java中的数据类型分为基本数据类型和复杂数据类型,int是前者,Integer是后者(也就是一个类). 3.初 ...
- 安装mysql-connector-python
安装mysql-connector-python 1.下载. wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connec ...
- opencv中的图像复制、保存和显示
接下来几天会写一个opencv的基础系列,与各位相互学习! &1 图像操作 声明图像指针:IplImage* 读入图像: cvLoadImage 创建图像:cvCreateImage 复制图像 ...
- xp-win7-win8的基础到精通教程-系统优化减肥教程-windos装mac
是否还在使用别人封装的系统?是否还在担心下载后的系统是有病毒的?还在为 安装好新系统后,里面安装的软件全是自己不需要的?担心流氓软件绑定浏览器主页?担心 系统重装后,自己所有的编程软件都需要重新安装? ...
- 一个因为粗心的Bug
/** * 数据绑定,分页显示 */ private void updataMenu(final EditText search) { if(listwz==null) { return; } pag ...