我有两个表,一个存储当前价格,另一个存储商品的历史价格。我想创建一个查询,获取当前价格以及当前价格与最近历史价格之间的差值。
在历史表中,我有价格的开始时间和结束时间,所以我只能选择最新的价格,但是如何在一个查询中将它们汇总在一起呢?或者我必须执行子查询?
select p.current_price,
h.historical_price
h.historical_time
from price p
inner join price_history h
on p.id = h.id
where max(h.historical_time)
这显然是行不通的,但这正是我想要实现的。
这
我有点困惑,我想在https://ens.domains/上买一个域名,而且一个域名的价格非常高,大约是150美元。这一价格大部分来自汽油费。令人困惑的是,ens告诉我下面的Estimated Total (Price + Gas). The gas price is based at 130 Gwei,而在https://ethgasstation.info/中,汽油价格是83。在ens是130,在and是83。对吗?为什么ENS会考虑更高的汽油价格?另外,在ENS中有什么方法可以看到估计的总量是如何计算的呢?
我在卡桑德拉有以下表格:
CREATE TABLE article (
id text,
price int,
validFrom timestamp,
PRIMARY KEY (id, validFrom)
) WITH CLUSTERING ORDER BY (validFrom DESC);
文章和历史价格信息(validFrom是新价格的时间戳)。商品价格经常变动。我想查询一下
某物品的历史价格。
一件物品的最后价格。
根据我的理解,我可以通过以下查询解决这两个问题:select id, price from article where id = X v
我正在试图优化一个查询,我的结论是顺序并不重要。因此,我在以下场景中尝试删除ORDER BY:
SELECT item, price FROM supplydemand
GROUP BY item
ORDER BY timestamp ASC
下面是正在发生的事情:表中的供应需求跟踪各种商品的价格。每件商品,我有4或5个不同的价格,因此,不同的行。上面的查询给出了每件商品“最老”的价格。分组是在item上完成的,升序时间戳给出了最老的行。此查询工作正常。
我已经注意到,只要我有最老的价格,我实际上并不关心返回的行是否排序。所以我想摆脱ORDER BY。以下是我尝试过的:
SEL
我有一个类似于下面的查询
SELECT
t1.Supplier,
t2.Product,
FROM
t1
INNER JOIN
t2 ON t1.ProductCode = t2.ProductCode
GROUP BY
t1.Supplier, t2.Product
在表t1上,还有名为“时间戳”和“价格”的列-我想要获取最新的价格,即选择按时间戳排序的价格。我能用任何聚合函数做到这一点吗,或者它必须是一个子查询吗?