选择与usercolumn中每个字段的usercolumn和date的最小值不同

7 sql distinct aggregate-functions minimum

我有一些像这样的数据但超过1500000条记录和超过700个用户:

usercolumn   ,       datecolumn\     
a1            ,      1998/2/11\
a2            ,      1998/3/11\
a1            ,      1998/2/15\
a4            ,      1998/4/14\
a3            ,      1999/1/15\
a2            ,      1998/11/12\
a2            ,      1999/2/11\
a3            ,      2000/2/9\
a1            ,      1998/6/5\
a3            ,      1998/7/7\
a1            ,      1998/3/11\
a5            ,      1998/3/18\
a2            ,      1998/2/8\
a1            ,      1998/12/11\
a4            ,      1998/12/1\
a5            ,      1998/2/11\
....
Run Code Online (Sandbox Code Playgroud)

我想从每个用户的usercolumn和date的最小值中获得不同的数据,如下所示:

usercolumn      ,    datecolumn \        
a1              ,    1998/2/11\
a2              ,    1998/2/8\
a3              ,    1998/7/7\
a4              ,    1998/4/14\
a5              ,    1998/2/11\
....
Run Code Online (Sandbox Code Playgroud)

请帮我写一个SQL命令为c#中的oledb适配器做这个,谢谢.

bri*_*zil 26

SELECT usercolumn, MIN(datecolumn) FROM tablename GROUP BY usercolumn;
Run Code Online (Sandbox Code Playgroud)

请注意,如果您想要其他列,则它们必须出现在GROUP BY子句中,或者在行之间保持不变.否则结果将是不确定的.


Dmi*_*nov 0

像这样的事情应该做的

    SELECT usercolumn
         , MIN(datecolumn)
      FROM YouTable
     GROUP BY usercolumn
         , MIN(datecolumn)
Run Code Online (Sandbox Code Playgroud)

  • “SQL 错误:GROUP BY 子句中不允许使用聚合函数”(至少对于像样的 SQL 引擎来说是这样!-)。只需删除最后一行,按 min(datecolumn) 分组没有任何意义,无论如何,没有它答案也很好!-) (2认同)