在我的代码中,我创建了List<>以下类:
public class Calculations
{
public int Year { get; set; }
public double Payment { get; set; }
public double AnnualInterest { get; set; }
public double AnnualPrincipalSplit { get; set; }
public double NLVBalance { get; set; }
public double apportionedValue { get; set; }
public double OpenMarketValue { get; set; }
public double NotionalLoan { get; set; }
public double ResidencyFee { get; set; }
public double BalanceOfShare { get; set; }
public double TotalShareOwnedOutright …Run Code Online (Sandbox Code Playgroud) 在我的 UML 类图中,我通常通过将属性名称放在关联两个类的箭头上方来进行对象集合(与其他符号相反,后者只是添加带有表示多重性的括号的属性)。但是我有一些情况,其中有多个相同类型的对象集合。例如(一个非常简单的例子):

假设有一门课程有一些学生申请了它(所以我有一个学生的集合,假设一个属性是 Student 的 ArrayList,称为“applied”)。但是,我还需要保留实际参加过课程的学生的单独集合(比方说,“参加”:另一个属性是 ArrayList,或者甚至是不同的集合类型,如学生的 Vector)。
我应该在关系线上添加所有属性名称吗?
我正在寻找以标准 UML 方式执行此操作的方法。之所以澄清这一点,是因为我知道 UML 规则在我们需要时可以很灵活。
我正在做一个 Spring Integration 项目,我遇到了一个大问题。流程中有一些过滤组件,稍后在流程中我有一个聚合元素。
问题是过滤组件不支持“apply-sequence”属性。它过滤掉一些记录,但不修改原始序列号,但减少了消息数量。在流程的稍后部分,我需要一个无法释放元素的聚合,因为某些消息被过滤掉了。
我不想使用任何具有 apply-sequence 属性的特殊路由元素。您能为我建议此类过滤问题的通用解决方案吗?
谢谢,
我有一个数据集,其结构是:Date Profit
数据集的一个示例是:
Date Profit
2013-06-21 14
2013-06-22 19
2013-06-23 11
2013-06-24 13
2013-06-25 6
2013-06-26 22
2013-06-27 22
2013-06-28 3
2013-06-29 5
2013-06-30 10
2013-07-01 17
2013-07-02 14
2013-07-03 9
2013-07-04 7
Run Code Online (Sandbox Code Playgroud)
Sample input 是 :
data = [('2013-06-21',14),
('2013-06-22',19),
('2013-06-23',11),
('2013-06-24',13),
('2013-06-25',6),
('2013-06-26',22),
('2013-06-27',22),
('2013-06-28',3),
('2013-06-29',5),
('2013-06-30',10),
('2013-07-01',17),
('2013-07-02',14),
('2013-07-03',9),
('2013-07-04',7)]
Run Code Online (Sandbox Code Playgroud)
现在我想做一个rolling aggregation并存储聚合。通过滚动聚合,我的意思是说对于第 1 周(2013-06-21 到 2013-06-27),我想添加前一个日期的利润并将其与当前日期一起存储。因此,对于2013-06-21总和将是14唯一的,因为它是一周的第一天,但然后2013-06-22它应该是的总和previous date (2013-06-21)与current date (2013-06-22)这应该与当前的日期一起存储。这将持续到本周末,然后下周它将再次重新开始,新周没有以前的日期。所以第一周sample output应该是这样的:
Date …Run Code Online (Sandbox Code Playgroud) 我是ElasticSearch的新手。以前,我仅以非常有限的方式仅将其用于Django-Haystack,并且从未直接与ES交流过。
目前,我有一个带有几个文档的ElasticSearch(如果重要的话,为5.x)索引。我使用的是Python + Elasticsearch-dsl + django-elasticsearch-dsl,因此我正在为数据库模型建立索引,但这并不重要。我将尽力使这个问题与图书馆无关。
从概念上讲,我将用户及其帖子存储在同一索引中。用户文档和帖子文档有一个共同点-一个字段user_id。
用户看起来像这样:
{
"_id": 1,
"_type": "user_document",
"username": "jdoe",
"user_id": 1,
"title": "Test user"
}
Run Code Online (Sandbox Code Playgroud)
帖子是这样的:
{
"_id": 1,
"_doc": "post_document",
"user_id": 1,
"title": "Hello world!",
"text": "Lorem ipsum test test test..."
}
Run Code Online (Sandbox Code Playgroud)
我要我的应用程序实现的是一个单输入搜索字段,该字段可以对用户及其帖子进行全文搜索(在现实世界中,有更多的文档“类型”-我在这里只是为了举例而简化) 。我想汇总user_id显示仅匹配的不同用户的列表。
目前,我正在这样查询:
{
"query": {
"multi_match": {
"query": "test",
"fields": ["username^3", "title^2", "text"]
}
},
"aggs": {
"user_ids": {"terms": {"field": "user_id"}}
}
}
Run Code Online (Sandbox Code Playgroud)
然后使用响应aggregations.user_ids.buckets.key获取匹配用户的列表。
但是,该列表似乎只是按文档数量排序(因此,如果用户有一对带有“ test”一词的帖子,它们似乎会赢得名为“ test”的用户的称呼),我想尝试排序。我当前的想法是使用平均(或中间值)文档匹配_score。
注意:在实际情况下,不仅有两种文档类型,因此采用快捷方式并仅查询特定的文档是_type行不通的。
我怎样才能做到这一点?我正在阅读 …
该查询按预期工作,但速度非常慢。这里有人有提高性能的建议吗?
我本质上只是创建一个临时表来存储所有表和列名称,并通过 WHILE 语句循环它们,以使用我想要的详细信息创建到另一个表的动态插入。
我最近的一次运行花费了大约 21 分钟,这并不完全糟糕(考虑到任务),但我很想获得一些关于如何/在哪里可以对其进行微调的意见。
USE <DATABASE>;
IF NOT EXISTS(SELECT *
FROM sys.schemas WHERE name='temp')
BEGIN
EXEC ('CREATE SCHEMA temp');
END;
IF OBJECT_ID('temp.columns') IS NOT NULL
BEGIN
DROP TABLE temp.columns
END;
SELECT [table_name]
, [column_name]
, [data_type]
, [is_nullable]
, [numeric_scale]
, [ordinal_position]
INTO [temp].[columns]
FROM information_schema.columns c
WHERE table_schema = 'dbo'
-- AND table_name = 'CONTACTS'
;
IF OBJECT_ID('_TableColumnsUsed') IS NOT NULL
BEGIN
DROP TABLE _TableColumnsUsed
END;
CREATE TABLE _TableColumnsUsed (Table_Name VARCHAR(255) NULL, Column_Position INT, Column_Name VARCHAR(255) …Run Code Online (Sandbox Code Playgroud) 我正在尝试此mongo聚合,但得到了输出,但我的要求是获取月份名称。我正在尝试不同的聚合类型,但仍未获得需求输出,任何人都可以帮助我。
db.collection.aggregate([
{ $match: {
CREATE_DATE: {
$lte:new Date(),
$gte: new Date(new Date().setDate(new
Date().getDate()-120)
)
}
} },
{ $group: {
_id:{
month: { $month: "$CREATE_DATE" },
year: { $year: "$CREATE_DATE" }
},
avgofozone:{$avg:"$OZONE"}
} },
{ $sort:{ "year": -1 } },
{ $project: {
year: '$_id.year',
avgofozone: '$avgofozone',
month: '$_id.month',_id:0
} }
])
Run Code Online (Sandbox Code Playgroud)
截至目前的输出:
/* 1 */
{
"year" : 2018,
"avgofozone" : 16.92,
"month" : 4
}
/* 2 */
{
"year" : 2017,
"avgofozone" : 602.013171402383,
"month" …Run Code Online (Sandbox Code Playgroud) 我可以在文档中看到可用于某些 mongo 查询的文档,这确实很有帮助,但除了没有提供太多信息的标志explain("executionStats")之外,我看不到聚合查询的此类实用程序。explain是否有计划将完整概述也集成到聚合查询中?
我经常遇到这样的查询:
SELECT
a.Id,
a.A,
a.B,
a.C,
SUM(b.Foo) AS foo
FROM
TableA AS a
JOIN TableB AS b
ON a.Id = b.TableAId
GROUP BY a.Id;
Run Code Online (Sandbox Code Playgroud)
在SQL Server(如果ONLY_FULL_GROUP_BY为true,则为MySQL )中,此查询也不好。一切都必须是a)聚合函数中的,或b)中的GROUP BY。
我的问题是,这两种解决方案看起来都很糟糕并且具有误导性。如果您选择了一个随机的聚合函数,MAX()您将得到:
SELECT
a.Id,
MAX(a.A) AS A,
MAX(a.B) AS B,
MAX(a.C) AS C,
SUM(b.Foo) AS foo
FROM
TableA AS a
JOIN TableB AS b
ON a.Id = b.TableAId
GROUP BY a.Id;
Run Code Online (Sandbox Code Playgroud)
该查询看起来像我们关心a.A,a.B和的最大值a.C,并且混淆了最大值没有意义的事实。
GROUP BY 好一点:
SELECT
a.Id,
a.A,
a.B,
a.C,
SUM(b.Foo) …Run Code Online (Sandbox Code Playgroud) 我有一组具有布尔字段 X 的对象。 [{..., x: true, y: 3, ...]
我需要聚合这个数组,以便获得一个值,true(或false),如果 的所有值x都对应true(或false),否则undefined......以及......的总和y......
是否可以为此目的使用reduceArray 函数、groupby by underscorejs 或其他函数?
前任:
[
{a:'titi', x: true, y: 3},
{a:'toto', x: false, y: 6}
]
Run Code Online (Sandbox Code Playgroud)
结果
{x: undefined, y: 9}
Run Code Online (Sandbox Code Playgroud) aggregation ×10
mongodb ×2
sql-server ×2
arrays ×1
c# ×1
class ×1
collections ×1
dynamic ×1
filtering ×1
integration ×1
javascript ×1
mongoose ×1
mysql ×1
pandas ×1
python ×1
relevance ×1
search ×1
sorting ×1
sql ×1
t-sql ×1
uml ×1