PDA

View Full Version : سوال: یافتن نزدیک ترین مقدار در دیتابیس



eliTive
پنج شنبه 20 خرداد 1389, 13:26 عصر
سلام دوستان ،
فرض کنید جدول زیر رو در دیتابیس داشته باشیم :


id | number
-----------------
1 | 1.1
2 | 1.2
3 | 1.3
4 | 1.4
5 | 1.5

حالا فرض کنید ما عدد 1.37 رو داریم.
این عدد بین دو عدد 1.3 و 1.4 قرار داره. حالا چجوری و با چه query این دو تا عدد رو به دست بیاریم.
یعنی در واقع queryمون شامل اولین و نزدیکترین عدد های کمتر و بیشتر به اون عدد باشه. ( کمترین و بیشترین مقدار نزدیک به مقدار مورد نظر )

ممنون

mohmadd
پنج شنبه 20 خرداد 1389, 15:40 عصر
با این میشه :


select * from table where item < 1.37 order by item desc limit 1;
select * from table where item > 1.37 order by item asc limit 1;اولی کوچکترین عدد و دومی بزرگترین عدد رو میده

funpatogh
جمعه 21 خرداد 1389, 02:45 صبح
select * from table where item between 1.3 and 1.4 order by item desc limit 0,1;