下一个是mytable
Part Number Voltage Amp HP
MMX34AA014F0-0 480 14 10
MMX34AA016F0-0 480 16 10
DC1-34018FB-A20N 480 18 10
我想在我的数据库中搜索一条记录,例如 HP = '10' And [Amp ]= '14' 它应该给我 MMX34AA014F0-0 就可以了
但是如果 HP = '10' 并且 [Amp ]= '13' 它应该给我 MMX34AA014F0-0 这个
Part Number Voltage [Amp] HP
MMX34AA014F0-0 480 14 10
如果 HP = '10' 并且 [Amp ]= '15' 它应该给我 MMX34AA016F0-0 这个
Part Number Voltage [Amp] HP
MMX34AA016F0-0 480 16 10
我该怎么做? 因为我这样做是检索所有大于我输入的 Amp 的记录,而我真正想要的是,如果找不到我在 [amp] 变量中输入的值,则搜索下一个大于我输入的一个
最佳答案
这将为您提供所需的内容,其中 @hp 是您的 hp
变量,@amp 是您的 amp
变量。
SELECT *
FROM mytable
WHERE [HP] = @hp
AND [AMP] = (SELECT MIN([AMP]) FROM mytable WHERE [HP] = @hp AND [AMP] >= @amp)
关于c# - 如果找不到我输入的记录,如何在 SQL 中找到下一个更大的可用记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28197237/