首页 > 其他分享 >数仓的常用函数

数仓的常用函数

时间:2023-12-27 18:35:01浏览次数:33  
标签:数仓 常用 函数 study video select new ### log

数仓的常用函数


### 当前日期
select current_date()

###  当前时间
select current_timestamp()

###  日期增加函数
select date_add(current_date(),3) from  dws_study.user_video_log_new_daily limit 10

###  日期减少函数
select date_sub(current_date(),10) from  dws_study.user_video_log_new_daily limit 10

###  字符串解析成日期函数
select date_format(current_timestamp(),'yyyy--MM-dd HH:mm:ss') from  dws_study.user_video_log_new_daily limit 10

###  if函数
select if(1=1,100,200) from dws_study.user_video_log_new_daily limit 1   -----100   T返回100 F返回200

###  非空函数coalesce  返回第一个非空值,若都为null,则返回null
select coalesce(null,1,2) from dws_study.user_video_log_new_daily limit 1

###  条件判断case
### 1 如果a等于b 返回c ;如果a等于d,返回e,否则返回f
### 2 如果a为T返回b ;如果c为T返回d 否则返回e
select 
case 100
when 50 then 'c' 
when 100 then 'e' 
else' f' end 
from dws_study.user_video_log_new_daily limit 1

select
case when 1=2 then '0'
when 2=2 then 'I'
else 'U' end 
from dws_study.user_video_log_new_daily limit 1

###  正则表达替换函数 regexp_replace

select 
    regexp_replace('foobar','oo|ar','')
    from 
    dws_study.user_video_log_new_daily limit 1

###  正则表达解析函数哇
##### 将字符串分为几部分 按照下表分段取值
select 
  regexp_extract('abcddefg..0','abc(.*?)(..0)',1)
  from 
  dws_study.user_video_log_new_daily limit 1
    
### split()分割函数
select 
    split('asffghjfg','f')
    from 
    dws_study.user_video_log_new_daily limit 1
    
    
### cast() 类型转化函数
select 
    cast('001' as bigint)
    from 
    dws_study.user_video_log_new_daily limit 1
    
### get_json_object() 解析函数
SELECT 
        get_json_object("{'name': 'xiaowang', 'age': 18}", '$.name') AS name,  
       get_json_object("{'name': 'xiaowang', 'age': 18}", '$.age') AS age  
FROM dws_study.user_video_log_new_daily  
LIMIT 1;

标签:数仓,常用,函数,study,video,select,new,###,log
From: https://www.cnblogs.com/blog-123/p/17931182.html

相关文章

  • SQL SERVER 数据库的常用DBA命令
    查看表是否死锁select* frommaster..SysProcesses wheredb_Name(dbID)='数据库名'  andspId<>@@SpId  anddbID<>0  andblocked>0;或者selectrequest_session_idspid,OBJECT_NAME(resource_associated_entity_id)table......
  • 几种常用的加密方法
    publicstaticvoidmain(String[]args)throwsException{Stringmd5Str=encodeToMD532("helloword");//32位,小写Stringmd532Lower=md5Str.toLowerCase();//32位,大写Stringmd532Upper=md532Lower.toUpperCase......
  • 值函数近似
    值函数近似,这是一个很有意思的东西,为后面DQN做铺垫吧,就是说,你想要训练模型,你手上确实有数据,0,1,2,3,4,5。。。。。诸如此类但是,它们就只是一个个的点,它们是离散的,不是连续的,比如说有一个和重要的状态,它是最优的一个点,但它夹在了1和2的中间,然后你也拿不到这个数据,因为你能拿到的就是离散......
  • PGSQL_函数
    逗号分隔字符串,转换成一列--源数据:'c6d4eed5,7e51b2d9,768db3f1,7cc464bb'--函数:regexp_split_to_tableSELECTregexp_split_to_table('c6d4eed5,7e51b2d9,768db3f1,7cc464bb',',')逗号分隔字符串,转换成数组--源数据:'c6d4eed5,7e51b2d9,768db3f1,7cc464bb......
  • 怎么用 python 项目函数实现字符串反转
    字符串反转是一个常见的操作,可以通过Python函数轻松实现。在本文中,我们将探讨如何使用Python函数来反转字符串,无论是针对单个字符串还是列表中的多个字符串。1.反转单个字符串要反转单个字符串,我们可以使用Python的切片功能或者内置的reversed()函数。使用切片功能defrevers......
  • Linux系统下常用的文本编辑器有哪些?
    文本编辑器是Linux操作系统中非常重要的工具,大家都知道,Linux操作系统真正的魅力在于命令行,当我们使用命令行进行工作时,就需要一个趁手的文本编辑器。那么Linux系统下常用的文本编辑器有哪些?这五个你都用过吗?第一:VimEditorVim是一个类似于Vi的文本编辑器,不过在Vi的基......
  • break 或 continue 循环函数,使用some同forEarch一样,但是直到找到就不继续往下循环,节省
    停止循环是循环中一个常见的需求。使用for循环我们可以用break提前结束循环。consta=[0,1,2,3,4];for(vari=0;i<a.length;i++){if(a[i]===2){break;//stoptheloop}console.log(a[i]);}//>0,1另一个常见的需求使我们需要直接取......
  • 模拟实现strstr函数的代码——《初学C语言第40天》
    //////模拟实现strstr////(字符中的元素是连续存放的,所以不会存在跳动存放的情况,例如a1="ababcd",a2="ac"此结果就是NULL)////情况1.arr1="abcd"arr2="abc"(一次匹配就找到了)////情况2.arr1="ababcd"arr2="abc"(多次匹配才能找到)//#include<stdio.h>//#in......
  • 使用pack函数输出数组中满足条件元素的索引
    programmain_test  implicitnone    real,dimension(5)::arr1,arr2  LOGICAL,dimension(5)::ad,ab,ac,tot  INTEGER,dimension(:),allocatable::arr3  INTEGER::i  arr1=[1.0,2.3,-0.5,3.3,-1.6]  arr2=[1.0,-5......
  • Windows常用快捷键
    功能快捷键切换菜单/代码中空四个格Tab打开开始菜单windows关闭当前窗口Alt+F4复制Ctrl+C粘贴Ctrl+V全选Ctrl+A剪切Ctrl+X撤销Ctrl+Z恢复Ctrl+Y保存Ctrl+S删除(删除到回收站)Delete永久删除Shift+Delete打开运行框window......