![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sql
文章平均质量分 50
Ayanha
这个作者很懒,什么都没留下…
展开
-
json解析
json解析原创 2022-07-21 16:37:17 · 114 阅读 · 0 评论 -
sql中几个有趣的函数
分组拼接函数group_concat(拼接字段)这个函数可以按照指定分组,拼接每组中指定字段的值为一个字符串。也可以开窗使用group_concat(拼接字段) over(partition by 分组字段 order by 排序字段)select a.* ,b.time_group from dws.dws_niu_kwai_data a left join(select data_date ,brand ,people ,max(time_group) time_group原创 2021-11-09 17:20:02 · 835 阅读 · 0 评论 -
sql窗口函数
组内排序row_number()/rank()/dense_rank() over (order by 字段1) as 新字段:按照字段1排序编号row_number()/rank()/dense_rank() over (partition by 字段1 order by 字段2) as 新字段:按照字段1分组后,按照字段2排序编号注:row_number():排序不重复,按出现顺序排序rank():排序重复,但总数不会变。如:1,1,3dense_rank():排序重复,总数减少。如1,1原创 2021-11-09 16:51:27 · 712 阅读 · 0 评论 -
mysql参数使用
mysql的参数可以实现递增,常用于排名或自增日期mysql排名赋参:@rownum := @rownum+1select a.*,@rownum := @rownum+1 as 排名 from (select * from table) a,(select @rownum := 0) r给维表加日期-- 一次性插入3年数据,单个店铺unioninsert into dy_shop.shop_account_fullselect * from((SELECTs.*,@date :=原创 2021-11-09 16:19:06 · 714 阅读 · 0 评论 -
几个数据库踩坑经验
IQ库注意事项case when …函数返回值必须跟字段类型一致(数值型)开窗函数如row_number() over()不能参与where、group语句(需要根据开窗函数筛选分组时,可添加嵌套查询,建立外层查询,将开窗函数的返回结果作为独立字段进行相关查询)聚合函数存在于子查询时,order by必须放在最外层字符串拼接可直接用+或||:‘A’+‘B’ or ‘A’||‘B’clickhouse、AnalyticDB MySQL库注意事项这两个库都是列式存储,全索引。所以对于字段要求很严原创 2021-11-09 16:13:56 · 449 阅读 · 0 评论 -
sql初学tips
建表create table 表名(字段1 字段类型(长度) 约束,字段1 字段类型(长度) 约束,…)【temporary table代表临时表】【约束:not null / unique / primary key】查询基本框架select … from 表 where … group by … having … order by …查询逻辑from+join→where→group by→having→select→order by→limit从哪些表里的→哪些内容中→按照哪个字段原创 2021-11-09 15:52:31 · 248 阅读 · 0 评论 -
sql中几个常用的json解析函数
data:代表json格式的字段名name:代表json中的元素普通解析mysql/ADB MYSQLjson_extract(data,’$.name’)clickhousedata[‘name’]特殊字符mysqljson_extract(data,’$.“name”’)ADB MYSQLjson_array_get(data,索引)索引为int型,从0开始,也就是直接解析array中的第几个元素解析json元素中的列表mysqljson_extract(原创 2021-11-09 15:37:52 · 2212 阅读 · 0 评论 -
Mysql基础知识罗列
查看数据库安全管理常用数据类型数据运输存储引擎索引数据库控制语言DCL数据库定义语言DDL数据库操作语言DML数据库查询语言DQL视图存储过程触发器原创 2021-06-04 10:55:29 · 110 阅读 · 0 评论 -
sql常用语句的库对比
插入数据库备注insert into table_name values(value1,value2,…),(value3,value4,…)IQ/carbon/mysql/oracleinsert into table_name(column1,column2,…) values(value1,value2,…)IQ/carbon/mysql/oraclecarbon需要全字段插入,非目标插入字段的值可用空值或0填充insert into new_tablenam...原创 2021-01-15 17:34:41 · 390 阅读 · 0 评论 -
mysql存储过程实例
新建存储过程,并调度当数据量太大,且需要实时查询时,会严重影响数据库性能,查询速度也会很慢,不利于数据展示效率的提高,此时,建议在数据库中通过存储过程新建一张临时表,将需要查询的结果数据插入到临时表中,然后调度此存储过程,并设置更新时间。实现每天在库中查询一次数据到临时表,然后实时查询临时表的结果数据,来提升性能。先创建临时表,再插入结果数据DROP PROCEDURE IF EXISTS mysql.wukushitu_liantong;--新建存储过程create PROCEDURE my原创 2020-10-13 18:16:22 · 259 阅读 · 0 评论 -
sql笔试题
实例一场景1:每组只显示一条最大值(eg:学生、课程、分数)#mysqlselect s_id,max(score) from score group by s_id#sql#先按照s_id分组,再按照score降序显示排名,拆选所有组内排名为1的数据#(row_number() over() 不显示并列排名,值相同则按出现顺序排名)select *,row_number() ov...原创 2020-04-12 12:00:22 · 212 阅读 · 0 评论