![](/img/trans.png)
[英]Given an RGB value what would be the best way to find the closest match in the database?
[英]Is there a way of returning data which is the closest to a single given value from a database?
我正在創建一個數據庫,其中包含一系列產品價格,我想測試一些查詢,其中之一是“查找價格最接近100,000英鎊的產品”。 我將如何編寫此查詢?
產品表名稱為“車輛”,價格表名稱為“價格”
一種方法是order by
使用表達式來使用order by
:
select t.*
from t
order by abs(price - 100000)
fetch first 1 row only;
fetch
子句是標准SQL,用於將結果集限制為一行。 一些數據庫使用其他構造,例如select top (1)
和limit
)。
如果您使用的是SQL Server,這應該可以滿足您的需求:
SELECT TOP 1 *
FROM [myTable]
ORDER BY ABS( price - 100000 )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.