如何在sql中获取最少的行
您好,我想从Sql Server表中检索具有最小值但不应改变行中数据顺序的行,也就是说,Id旁边的数据不应该被错误排序。我正在尝试获得结果,但我对得到的结果不满意。我知道我可以使用where子句来阻止数据错误地放置顺序,但由于我想将其与java向量相关联,我不能使用该选项。 这是我目前正在编码的rm_id是我的id,但我得到的最小值是0如何在sql中获取最少的行,sql,sql-server,Sql,Sql Server,您好,我想从Sql Server表中检索具有最小值但不应改变行中数据顺序的行,也就是说,Id旁边的数据不应该被错误排序。我正在尝试获得结果,但我对得到的结果不满意。我知道我可以使用where子句来阻止数据错误地放置顺序,但由于我想将其与java向量相关联,我不能使用该选项。 这是我目前正在编码的rm_id是我的id,但我得到的最小值是0 SELECT b.rm_id AS 'REMITTANCE ID', min(b.[1]) AS 'Re. 1', min(b.[2])
SELECT b.rm_id AS 'REMITTANCE ID',
min(b.[1]) AS 'Re. 1',
min(b.[2]) AS 'Rs. 2',
min(b.[5]) AS 'Rs. 5',
min(b.[10]) AS 'Rs. 10',
min(b.[20]) AS 'Rs. 20',
min(b.[50]) AS 'Rs. 50',
min(b.[100]) AS 'Rs. 100',
min(b.[500]) AS 'Rs. 500',
min(b.[1000]) AS 'Rs. 1000',
min(b.[tp]) AS 'T.P',
min(b.[tv]) AS 'T.V'
FROM trans_det AS b
GROUP BY b.rm_id WITH ROLLUP
ORDER BY rm_id DESC;
我想你可能想要这个:
select top 1 td.* from trans_det order by b.[1] union all
select top 1 td.* from trans_det order by b.[2] union all
select top 1 td.* from trans_det order by b.[5] union all
. . .
select top 1 td.* from trans_det order by b.tv
这将返回一组行,每个行的最小值为。您的问题很模糊。您说希望该行具有最小值,但没有指定应用该最小值的字段。另一个考虑因素是可能会有领带,所以你需要知道如何处理。我们无法理解你想要什么。请添加一些示例数据以及您希望从这些数据中看到的结果。