当前位置: 首页 > article >正文

mysql之DATE_FORMAT迁移到gbase8s

-- DATE_FORMAT(d,fmt)
-- fmt 有差异需转换,支持yyyy-mm-dd(与oracle小部分有差异)或则%Y-%m-%d(mysql小部分有差异)格式
drop function if exists DATE_FORMAT(datetime year to second, varchar);
create dba function DATE_FORMAT(d datetime year to second, fmt varchar(40))
returns varchar(40) with (not variant);
define tmpfmt varchar(40);
on exception
return null;
end exception;
if substr(fmt,1,1)='%'
then
let tmpfmt = replace(fmt,'f','F5');
let tmpfmt = replace(tmpfmt,'h','I');
let tmpfmt = replace(tmpfmt,'k','H');
let tmpfmt = replace(tmpfmt,'l','I');
let tmpfmt = replace(tmpfmt,'M','B');
let tmpfmt = replace(tmpfmt,'s','S');
let tmpfmt = replace(tmpfmt,'W','A');
let tmpfmt = replace(tmpfmt,'i','M');
return gbase_to_char(d,tmpfmt);
else
RETURN  to_char(d,fmt);
end if;
end function;

测试语句

SELECT '%M %d, %Y___'||DATE_FORMAT(d,'%M %d, %Y')FROM ti UNION all
SELECT 'fmMonth DD,YYYY___'||DATE_FORMAT(d,'fmMonth DD,YYYY')FROM ti UNION all
SELECT '%W, %b %e, %Y  %h:%i %p___'||DATE_FORMAT(d, '%W, %b %e, %Y  %h:%i %p')FROM ti UNION ALL
SELECT 'fmDay, Mon DD, YYYY  HH12:MI AM___'||DATE_FORMAT(d, 'fmDay, Mon DD, YYYY  HH12:MI AM')FROM ti UNION ALL
SELECT '%Y-%m-%d___'||DATE_FORMAT(d, '%Y-%m-%d') FROM ti UNION ALL
SELECT 'yyyy-mm-dd___'||DATE_FORMAT(d, 'yyyy-mm-dd') FROM ti UNION all
SELECT '%D of %M, %Y___'||DATE_FORMAT(d, '%D of %M, %Y')FROM ti UNION ALL
SELECT 'DDth of fmMonth, YYYY___'||DATE_FORMAT(d, 'DDth fmMonth, YYYY ')FROM ti --似乎不存在DDth;

运行结果如下:

DDth只能改成DD了


http://www.kler.cn/a/594597.html

相关文章:

  • MVC_Publish-Subscriber 模式中的事件处理程序
  • 【虚幻引擎UE5】SpawnActor生成Character实例不执行AI Move To,未初始化AIController的原因和解决方法
  • 微服务即时通信系统---(九)消息转发子服务
  • Sqlserver安全篇之_启用和禁用Named Pipes的案列介绍
  • 基于 HT 2D3D 渲染引擎的新能源充电桩可视化运营系统技术剖析
  • 网络安全证书培训机构有哪些
  • Godep是什么??在GoLang中作用是什么
  • Unity 从零开始的框架搭建1-7 FSM有限状态机与其应用示例
  • 自动生成树形目录结构:与 `el-tree` 和滚动定位结合的完整解决方案
  • WordPress系统获取webshell的攻略
  • 请为下面的html添加一个修改按钮,以便对书名、价格进行修改
  • 【FastGPT】利用知识库创建AI智能助手
  • C++动态库中的静态调用和动态调用,延迟加载
  • 再学:ERC721扩展、ERC1155、SBT,OpenSeaNFT市场 NFT Market 习题讲解
  • Multisim学习-01 特点安装使用和第一个仿真实例
  • 智慧人大系统(源码+文档+讲解+演示)
  • [极客大挑战 2019]Upload_3.19BUUCTF练习day3(2)
  • 《信息系统安全》(第一次上机实验报告)
  • 虚拟机如何扩容磁盘
  • PHP实现用户登录与注册功能