小编spl*_*lrs的帖子

多个array_agg()调用单个查询

我正在尝试用我的查询来完成某些事情,但它并没有真正起作用.我的应用程序曾经有一个mongo db,所以应用程序用于在一个字段中获取数组,现在我们不得不更改为Postgres,我不想更改我的应用程序代码以保持v1工作.

为了在Postgres中的1个字段中获取数组,我使用了array_agg()函数.到目前为止这个工作正常.但是,我正处于另一个不同表的字段中需要另一个数组的位置.

例如:

我有我的员工.员工有多个地址,有多个工作日.

SELECT name, age, array_agg(ad.street) FROM employees e 
JOIN address ad ON e.id = ad.employeeid
GROUP BY name, age
Run Code Online (Sandbox Code Playgroud)

现在这对我来说很好,这将导致例如:

| name  | age| array_agg(ad.street)
| peter | 25 | {1st street, 2nd street}|
Run Code Online (Sandbox Code Playgroud)

现在我想在工作日加入另一张桌子,所以我这样做:

SELECT name, age, array_agg(ad.street), arrag_agg(wd.day) FROM employees e 
JOIN address ad ON e.id = ad.employeeid 
JOIN workingdays wd ON e.id = wd.employeeid
GROUP BY name, age
Run Code Online (Sandbox Code Playgroud)

这导致:

| peter | 25 | {1st street, 1st street, 1st street, 1st …
Run Code Online (Sandbox Code Playgroud)

sql arrays postgresql aggregate-functions

6
推荐指数
1
解决办法
3130
查看次数

在日期时间格式java中添加小时

SimpleDateFormat parser = new SimpleDateFormat("HH:mm");
Date time1 = parser.parse("7:30");
Run Code Online (Sandbox Code Playgroud)

现在,如果我想再增加2个小时time1,比如:

7:30 + 2 = 9:30
Run Code Online (Sandbox Code Playgroud)

我如何添加2小时?

java

3
推荐指数
1
解决办法
1万
查看次数

在 put() 中忽略了 WebSphere MQ 6 消息分段选项?

我正在尝试让 MQ v6 使用消息标志 MQMF_SEGMENTATION_ALLOWED 和放置消息选项 MQPMO_LOGICAL_ORDER 按照 IBM 的帮助指南中的建议对消息进行分段。

ImqMessage message;
message.setFormat(MQFMT_STRING);    
message.setMessageFlags(MQMF_LAST_MSG_IN_GROUP | MQMF_SEGMENTATION_ALLOWED);

/* ... */

ImqPutMessageOptions pmopts;
pmopts.setOptions(MQPMO_LOGICAL_ORDER);

if (!queue.put(message, pmopts))
{
    buflen;
    m_iLastError = queue.reasonCode();
    CString reason;
    reason.Format(_T("%d"), queue.reasonCode());
    _errorMsg = "Reason code: " + reason;
    /* throw exception etc.. */    
}
Run Code Online (Sandbox Code Playgroud)

无论我是否指定这些标志,当我调用 put() 时,它总是返回一个 false 并且具有原因代码 (2010) MQRC_DATA_LENGTH_ERROR。

是否有任何与 v6 和分段相关的常见问题(例如它在 Windows 上不可用,任何类似的东西......),或者任何可以尝试的建议?

顺便说一句,对于稍微无上下文的代码示例,我们深表歉意。我会尽力回答人们对我的问题提出的问题。

c++ ibm-mq

2
推荐指数
1
解决办法
893
查看次数

标签 统计

aggregate-functions ×1

arrays ×1

c++ ×1

ibm-mq ×1

java ×1

postgresql ×1

sql ×1