Я новичок в couchbase и некоторое время просматривал документы на couchbase и другие онлайн-ресурсы, но мой запрос не работал. Ниже приведена структура данных и мой запрос:
Table1:
{
"jobId" : "101",
"jobName" : "abcd",
"jobGroup" : "groupa",
"created" : " "2018-05-06T19:13:43.318Z",
"region" : "dev"
},
{
"jobId" : "102",
"jobName" : "abcd2",
"jobGroup" : "groupa",
"created" : " "2018-05-06T22:13:43.318Z",
"region" : "dev"
},
{
"jobId" : "103",
"jobName" : "abcd3",
"jobGroup" : "groupb",
"created" : " "2018-05-05T19:11:43.318Z",
"region" : "test"
}
Мне нужно получить jobId, в котором содержится самая последняя информация о задании (макс. Для созданной метки времени) для заданной группы и региона (группа по группам и регионам).
Мой sql-запрос не помогает мне использовать самостоятельное соединение для jobId.
Запрос:
/ *
Идея состоит в том, чтобы вытащить задание, которое было выполнено последним для всех возможных групп и регионов, и распечатать детали этого конкретного задания
select * from (select max(DATE_FORMAT_STR(j.created,'1111-11-11T00:00:00+00:00')) as latest, j.jobGroup, j.region from table1 j
group by jobGroup, region) as viewtable
join table t
on keys meta(t).id
where viewtable.latest in t.created and t.jobGroup = viewtable.jobGroup and
viewtable.region = t.region
Результат ошибки: результат не отображается
Желаемый результат:
{
"jobId" : "102",
"jobName":"abcd2",
"jobGroup":"groupa",
"latest" :"2018-05-06T22:13:43.318Z",
"region":"dev"
},
{
"jobId" : "103",
"jobName" : "abcd3",
"jobGroup" : "groupb",
"created" : " "2018-05-05T19:11:43.318Z",
"region" : "test"
}