Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在sql server中从两行中选择整个最小数据记录_Sql Server - Fatal编程技术网

Sql server 如何在sql server中从两行中选择整个最小数据记录

Sql server 如何在sql server中从两行中选择整个最小数据记录,sql-server,Sql Server,我在SQL Server 2012中有一个查询,返回以下结果 ID IssueID UpdateUserID ----------------------------- 205 105 25 208 105 28 我想从上面的集合中选择最小id行,如下所示 ID IssueID UpdateUserID ----------------------------- 205 105 25

我在SQL Server 2012中有一个查询,返回以下结果

ID    IssueID    UpdateUserID
-----------------------------
205     105          25
208     105          28
我想从上面的集合中选择最小id行,如下所示

ID    IssueID    UpdateUserID
-----------------------------
205     105          25   
如何执行此操作?

在SQL Server中,有一个关键字可以添加到查询中。假设您的ID是唯一的:

select top 1 *
from MyTable
order by ID;
在SQL Server中,有一个关键字可以添加到查询中。假设您的ID是唯一的:

select top 1 *
from MyTable
order by ID;
在SQL Server中,有一个关键字可以添加到查询中。假设您的ID是唯一的:

select top 1 *
from MyTable
order by ID;
在SQL Server中,有一个关键字可以添加到查询中。假设您的ID是唯一的:

select top 1 *
from MyTable
order by ID;

通用表表达式可以简化此操作

WITH [MinRowIds] AS (
  SELECT [IssueID], MIN([ID]) AS [minId]
  FROM [Issues]
  GROUP BY [IssueID]
)
SELECT [ID], [IssueID], [UpdateUserID]
FROM [Issues]
INNER JOIN [MinRowIds]
  ON (
    ([MinRowIds].[IssueId] = [Issues].[IssueID])
    AND ([MinRowIds].[minId] = [Issues].[ID])
  )
ORDER BY [IssueID]

通用表表达式可以简化此操作

WITH [MinRowIds] AS (
  SELECT [IssueID], MIN([ID]) AS [minId]
  FROM [Issues]
  GROUP BY [IssueID]
)
SELECT [ID], [IssueID], [UpdateUserID]
FROM [Issues]
INNER JOIN [MinRowIds]
  ON (
    ([MinRowIds].[IssueId] = [Issues].[IssueID])
    AND ([MinRowIds].[minId] = [Issues].[ID])
  )
ORDER BY [IssueID]

通用表表达式可以简化此操作

WITH [MinRowIds] AS (
  SELECT [IssueID], MIN([ID]) AS [minId]
  FROM [Issues]
  GROUP BY [IssueID]
)
SELECT [ID], [IssueID], [UpdateUserID]
FROM [Issues]
INNER JOIN [MinRowIds]
  ON (
    ([MinRowIds].[IssueId] = [Issues].[IssueID])
    AND ([MinRowIds].[minId] = [Issues].[ID])
  )
ORDER BY [IssueID]

通用表表达式可以简化此操作

WITH [MinRowIds] AS (
  SELECT [IssueID], MIN([ID]) AS [minId]
  FROM [Issues]
  GROUP BY [IssueID]
)
SELECT [ID], [IssueID], [UpdateUserID]
FROM [Issues]
INNER JOIN [MinRowIds]
  ON (
    ([MinRowIds].[IssueId] = [Issues].[IssueID])
    AND ([MinRowIds].[minId] = [Issues].[ID])
  )
ORDER BY [IssueID]

你试过什么?也许您可以从查找MIN函数开始
selecttop1from(…orderbyidasc)
我使用了MIN函数,但它给了我两行。对于Top关键字,它可能并不总是第一行。但我想我可以先按升序排列记录,然后选择Top1。但是有什么更简单的方法吗?是的,实际上在这种情况下,
TOP
是你不想要的
MIN
。你尝试了什么?也许您可以从查找MIN函数开始
selecttop1from(…orderbyidasc)
我使用了MIN函数,但它给了我两行。对于Top关键字,它可能并不总是第一行。但我想我可以先按升序排列记录,然后选择Top1。但是有什么更简单的方法吗?是的,实际上在这种情况下,
TOP
是你不想要的
MIN
。你尝试了什么?也许您可以从查找MIN函数开始
selecttop1from(…orderbyidasc)
我使用了MIN函数,但它给了我两行。对于Top关键字,它可能并不总是第一行。但我想我可以先按升序排列记录,然后选择Top1。但是有什么更简单的方法吗?是的,实际上在这种情况下,
TOP
是你不想要的
MIN
。你尝试了什么?也许您可以从查找MIN函数开始
selecttop1from(…orderbyidasc)
我使用了MIN函数,但它给了我两行。对于Top关键字,它可能并不总是第一行。但我想我可以先按升序排列记录,然后选择Top1。但是有什么更简单的方法吗?是的,实际上在这种情况下,
TOP
是您不想要的
MIN