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

小程序开发定制平台在线工具seo

小程序开发定制平台,在线工具seo,zen cart 网站google plus,网站建设的建议例子PGSQL基本使用 文章目录 PGSQL基本使用日期转换长度不够补数获取上下行取连续的开始和结束的值 日期转换 格式说明YYYY年MM月DD日hh2424小时制mi分钟ss秒 -- 日期字符串转指定日期字符串 -- 20250101123000 转为 2025-01-01 12:30:00 select to_char(to_timestamp(2025010112…

PGSQL基本使用

文章目录

  • PGSQL基本使用
  • 日期转换
    • 长度不够补数
    • 获取上下行
    • 取连续的开始和结束的值


日期转换

格式说明
YYYY
MM
DD
hh2424小时制
mi分钟
ss
-- 日期字符串转指定日期字符串
-- 20250101123000 转为 2025-01-01 12:30:00
select to_char(to_timestamp('20250101123000','YYYYMMDDhh24miss'),'YYYY-MM-DD hh24:mi:ss') as t;

长度不够补数

不足前面补数

-- 得到字符串 '09300000'
select lpad(cast(9300000 as text),8,'0') as t;

不足前面补数

-- 得到字符串 '15300000'
select lpad(cast(153000 as text),8,'0') as t;

获取上下行

获取上一行

-- 第一行 pre_name 为 nullselect *,lag(name) over ( order by rn) as pre_namefrom table-- 第一行 pre_name 为 ''
--说明: 1,第一行, '' 为第一行的值select *,lag(name,1,'') over ( order by rn) as pre_namefrom table

获取下一行

-- 最后一行 pre_name 为 nullselect *,lead(name) over ( order by rn) as pre_namefrom table-- 第一行 pre_name 为 ''
--说明: 1,最后一行, '' 为最后一行的值select *,lead(name,1,'') over ( order by rn) as pre_namefrom table

取连续的开始和结束的值

同一个账户,订单编号需要去除,5,9 。计算订单编号连续

-- 基础数据
with base as (select  1 as order_num, 'A01' as acct_idunion all select  2 as order_num, 'A01' as acct_idunion all select  3 as order_num, 'A02' as acct_idunion all select  4 as order_num, 'A02' as acct_idunion all select  5 as order_num, 'A02' as acct_idunion all select  6 as order_num, 'A02' as acct_idunion all select  7 as order_num, 'A01' as acct_idunion all select  8 as order_num, 'A01' as acct_idunion all select  9 as order_num, 'A01' as acct_idunion all select  10 as order_num, 'A01' as acct_idunion all select  11 as order_num, 'A01' as acct_id),-- 根据acct_id分组,根据order_num排序
base_order as (select *, row_number() over (partition by acct_id order by order_num) as rn from base
),
-- 获取上下行的rn
-- lag(rn,1,null) 表示第一行的 rn值为空
-- lead(rn,1,null) 表示最后一行的 rn值为空
base_rn as (
select *,lag(rn,1,null) over (partition by acct_id order by order_num) as pre_rn,lead(rn,1,null) over (partition by acct_id order by order_num) as next_rn
from base_order
where order_num != 5 and order_num != 9
),
-- 计算acct_id连续的 order_num
base_link as (
select *,case when pre_rn is null or pre_rn + 1 != rn then  order_num else null end as start_order_num, /**连续的开始*/case when next_rn is null or next_rn -1 != rn then order_num else null end as end_order_num, /**连续的结束*/sum(case when pre_rn is null or pre_rn + 1 != rn then 1 else 0 end) over (partition by acct_id order by order_num) as link_cnt /**连续的分为一组*/
from base_rn
)
-- 获取连续的开始订单编号和对应的结束订单编号
select max(start_order_num) as start_order_num,max(end_order_num) as end_order_num, acct_id
from base_link
group by acct_id, link_cnt

得到结果

start_order_numend_order_numacct_id
12A01
34A02
66A02
78A01
1011A01
http://www.dtcms.com/wzjs/244863.html

相关文章:

  • 域名备案成功怎么做网站自动推广工具
  • 杭州制作网页灰色行业seo
  • 门户网站要求企业管理培训课程视频
  • 付费阅读wordpress郑州百度seo
  • 大学网站开发与管理知识总结天津seo技术教程
  • 根据百度地图做网站百度应用平台
  • 网站建设发展方向sem是什么基团
  • 优秀网站主题今日小说排行榜百度搜索榜
  • 阿里巴巴网站服务器成本网络优化器
  • 我的世界做图片的网站品牌营销活动策划方案
  • 中国河北建设银行官网招聘网站优质的seo网站排名优化软件
  • 做网站标志有限颜色使用的吗企业网站seo案例分析
  • 嘉兴做营销型网站设计西安百度seo代理
  • 有没有专门做二手的网站网站流量统计查询
  • 网站建设论文文献seo网站推广批发
  • 大型的网站开发网页版登录入口
  • 超碰网站正在建设中刷僵尸粉网站推广
  • vs做网站案例yahoo引擎入口
  • 网站建设软件公司优化网站平台
  • 个体户工商可以做经营性网站吗软文世界平台
  • 牟平建设企业网站百度游戏中心app
  • 网站页面建设方案书模板精准营销推广
  • 有创意的网络公司名字大全武汉关键词seo
  • 美国淘宝代购网站建设什么叫网络营销
  • 网站高并发前端怎么做全世界足球排名国家
  • 做网站自己买服务器软文推广媒体
  • 网站的建设项目是什么意思网站关键词排名优化推广软件
  • 重庆市建设工程信息网官方百度seo网站在线诊断
  • 网站头部模板百度竞价排名收费
  • 建网站网站建设旅游网络营销的渠道有哪些