【发布时间】:2017-11-09 06:00:30
【问题描述】:
我知道这个问题听起来像是重复的问题,但我已经解决了我能找到的所有问题;虽然它仍然有可能与我可能错过的问题重复。
我有什么表面价值似乎是微不足道的要求,但无论我如何编写它,总有一些警告是行不通的。我试过GROUP、DISTINCT、JOIN、聚合函数等。
场景:
PRIMARYTABLE 包含一组活动,SECONDARYTABLE 包含活动的运行日期。每个广告系列可以有多次运行,我为每次运行添加了SUBKEY。
要求: 我需要能够将最近运行的广告系列放入列表中,以便用户可以更轻松地从运行最频繁的广告系列中进行选择。
PRIMARYTABLE
KEYCOLUMN INFOCOLUMN
100000 Test 1
100001 Test Campaign
100002 Test Image 2
100003 Test Img
100004 Image Test
100005 Test
100006 Test Image 3
100007 Test Image 4
100008 Test Image 5
100009 Image Comparison Test 2
100010 Testing
100011 Test Fields
100012 Test 5
100013 test
SECONDARYTABLE
KEYCOLUMN SUBKEY DATECOLUMN
100000 100000 2017-06-02 04:09:57.593
100001 100001 2017-06-19 12:09:54.093
100001 100002 2017-06-27 10:51:14.140
100004 100003 2017-06-27 12:33:47.747
100006 100004 2017-06-28 10:29:53.387
100007 100005 2017-06-28 10:36:23.710
100008 100006 2017-06-29 22:31:03.790
100009 100007 2017-06-29 23:07:52.870
100009 100010 2017-10-04 16:05:40.583
100009 100011 2017-10-04 16:09:55.470
100011 100008 2017-09-08 14:02:28.017
100012 100009 2017-09-11 16:17:23.870
100013 100012 2017-11-07 16:55:55.403
100013 100013 2017-11-08 15:37:16.430
以下是我所追求的或多或少的想法。
SELECT DISTINCT( a.[INFOCOLUMN] )
FROM [PRIMARYTABLE] a
INNER JOIN [SECONDARYTABLE] b ON ( a.[KEYCOLUMN] = b.[KEYCOLUMN] )
ORDER BY a.[DATECOLUMN]
希望有一个荷马辛普森“Doh!”当我看到它应该如何完成时。
非常感谢。
【问题讨论】:
标签: sql-server tsql sql-server-2016