计算&AI •
874 引用 •
936 回帖 •
446 关注
博客
关注
-
很多大机构都会有个中央数据仓库负责向应用提供数据服务。随着业务的发展,中央数据仓库的负载在持续增加。一方面,数仓是前端应用的数据后台,而前端应用不断增多,用户访问的并发数也不断增长。另一方面, ..
-
SQL SELECT a.CustomerID,a.OrderDate,a.ProductID,a.Quantity,a.Unit, a.Price,a.Amount,a.EmployeeID ..
-
对于已经序号化的维表,可以利用对位序列来处理维表上的过滤。 原理:产生一个与维表同样长度的序列,其成员是布尔值,满足条件的维表记录对应 true,否则对应 false。然后在事实表中用已经序号 ..
-
[链接]4.5.1 过滤后复用索引 SQL SELECT Suppliers.Region,sum(Amount) Amount FROM Orders LEFT JOIN Products ..
-
主键是自然数序号的维表,可以直接用序号定位实现关联,不必建索引,避免计算和比对 HASH 值,性能更好。 主键不是自然数序号的维表,可以事先转换成序号。同时把事实表中的对应维字段值也转换成相应 ..
-
前面的例子均使用 switch 做维表的关联,能获得很好的性能,但还有几个问题: 1) 关联后,外键字段的本身值失去了,必须到维表中取主键才能获得,速度会变慢。 如上例:如果还想取得 Empl ..
-
SQL SELECT floor((year(curdate())-year(Employees.Birthday))/10) Age, sum(Orders.Amount) Amount F ..
-
[链接]4.1.1 单层维表 SQL SELECT Employees.Region,sum(Orders.Amount) FROM Orders LEFT JOIN Employees ON ..
-
按月统计出当月发生过连续三天都有订单的用户数 SQL WITH a AS( SELECT count (1) AS num, day (OrderDate) days, CustomerID, ..
-
SQL WITH m AS( SELECT *, row_number() OVER(PARTITION BY year(OrderDate),month(OrderDate) ORDER B ..
-
SQL SELECT count (DISTINCT CustomerID) num,year(OrderDate) years, month(OrderDate) months FROM O ..
-
问题背景 发电设备中常常会放置传感器(DCS)来采集数据以监控设备运转的状况,某集团设计的电力监控统计系统,需要实时采集传感器的数据后保存,然后提供按时段的实时查询统计功能。 系统设计规模将支 ..
-
SQL SELECT count (DISTINCT CustomerID) iNum,count(1) Num FROM Orders WHERE OrderDate>='2021-0 ..
-
一、 SQL 及分析 查询SQL语句如下: select cntrycode, count(*) as numcust, sum(c_acctbal) as totacctbal from ( ..
-
SQL SELECT DISTINCT month(OrderDate) FROM Orders WHERE OrderDate>='2021-01-01' and OrderDate& ..
-
SQL 和 SPL 都是面向结构化数据的通用处理技术。SQL 普及率高受众广,很多用户天生就会用 SQL 查询数据,如果数据引擎支持 SQL 就会很容易上手,而且历史程序也相对容易迁移;SPL ..
-
按 CustomerID 排序后,可以快速实现针对 CustomerID 的去重和分组运算,遍历过程中只需要和上一条记录对比即可,也不需要保留结果集,速度快且不会有内存溢出问题。 [链接]3. ..
-
一、 SQL 及分析 查询SQL语句如下: select * from ( select s_name, count(*) as numwait from supplier,lineitem ..
-
[链接]3.2.1 集文件 SQL SELECT count (DISTINCT CustomerID) iNum,count(1) Num,EmployeeID,EmployeeName F ..
-
一般业务数据都有发生时间属性,当时间跨度比较长时,查询统计往往需要先按时间段过滤。数据以时间有序存储时可以提升过滤速度。 [链接]3.1.1 集文件 存量数据:将数据读出时按时间排序,然后写入 ..
-
SQL WITH m AS( SELECT *, row_number() OVER(PARTITION BY year(OrderDate),month(OrderDate)) r FROM ..
-
SQL SELECT EmployeeID, EmployeeName,sum(Amount) AS Amount FROM Orders WHERE OrderDate>='2022- ..
-
一、 SQL 及分析 查询SQL语句如下: select s_name,s_address from supplier,nation where s_suppkey in ( select p ..
-
查询今年每个月金额最大的三个订单 SQL WITH m AS( SELECT *,rank() OVER(PARTITION BY year(OrderDate),month(OrderDat ..
-
一、 SQL 及分析 查询SQL语句如下: select sum(l_extendedprice * (1 - l_discount)) as revenue from lineitem,pa ..