Ես ունեմ այս սեղանի դասավորությունը: Ես ուզում եմ ստանալ «USER1» գրառումը ամենավերջին ամսաթվի/ժամային կնիքով:
comments_sk case_sk comments create_user_id create_date
1 68200 test 1 USER1 2/11/17 11:00
1 68200 test 2 USER1 2/4/17 14:54
1 68200 test 3 USER2 12/30/16 12:37
1 8200 test 4 USER2 12/14/16 14:23
1 68200 test 5 USER3 12/13/16 9:16
1 68200 test 6 USER2 12/8/16 10:38
1 68200 test 7 USER3 12/2/16 10:58
1 68200 test 8 USER2 12/1/16 11:21
1 68200 test 9 USER2 11/8/16 13:36
Ես փորձել եմ այս հարցումները, բայց USER1-ի բոլոր գրառումները ցուցադրվում են:
SELECT DISTINCT comments_sk, case_sk, CAST(comments AS varchar) AS comments, create_user_id, create_date
FROM comments AS s
WHERE (s.case_sk = 68200) AND (s.create_user_id = 'USER1') AND (s.create_date =
(SELECT MAX(s1.create_date) AS cdate
FROM comments AS s1
WHERE (s1.comments_sk = s.comments_sk)))
GROUP BY comments_sk, case_sk, CAST(comments AS varchar), create_user_id, create_date
ORDER BY create_date DESC
SELECT s.comments_sk, s.case_sk, max(CAST(s.comments AS varchar)) AS comments, s.create_user_id, s.create_date
FROM comments AS s INNER JOIN
(SELECT comments_sk, case_sk, max(CAST(comments AS varchar)) AS comments, create_user_id, MAX(create_date) AS cdate
FROM comments
GROUP BY comments_sk, case_sk, CAST(comments AS varchar), create_user_id, maint_user_id, maint_date, comment_type_sk) AS s1 ON
s.case_sk = s1.case_sk AND s.create_date = s1.cdate
WHERE (s.case_sk = 68200)
GROUP BY s.comments_sk, s.case_sk, CAST(s.comments AS varchar), s.create_user_id, s.create_date, s.comment_type_sk
HAVING (s.create_user_id = 'USER1')
ORDER BY s.create_date DESC
SELECT comments_sk, case_sk, CAST(comments AS varchar) AS comments, create_user_id, max(create_date)
FROM comments AS s
WHERE EXISTS
(SELECT comments_sk, case_sk, CAST(comments AS varchar) AS comments, create_user_id, MAX(create_date) AS cdate
FROM comments AS s1
WHERE (s1.case_sk = s.case_sk) AND (s1.comments_sk = s.comments_sk)
GROUP BY comments_sk, case_sk, CAST(comments AS varchar), create_user_id, maint_user_id, maint_date, comment_type_sk
HAVING (s.create_date = MAX(s1.create_date))) AND (s.create_user_id = 'USER1') AND (s.case_sk = 68200)
GROUP BY comments_sk, case_sk, CAST(comments AS varchar), create_user_id, create_date, comment_type_sk
ORDER BY create_date DESC