我有一个表在MySQL数据库中,看起来像这样的MySQL的行:10%返回给定值
username rating
1 xxxxxxxx -1
2 xxxxxxxx 5
3 xxxxxxxx 14
4 xxxxxxxx 23
5 xxxxxxxx 12
现在,如果我有一个给定值,说13,我怎么会去返回所有评级在10%以内的行都是13?
我有一个表在MySQL数据库中,看起来像这样的MySQL的行:10%返回给定值
username rating
1 xxxxxxxx -1
2 xxxxxxxx 5
3 xxxxxxxx 14
4 xxxxxxxx 23
5 xxxxxxxx 12
现在,如果我有一个给定值,说13,我怎么会去返回所有评级在10%以内的行都是13?
SELECT *
FROM `tblName`
WHERE `rating` BETWEEN 13 * 0.9 AND 13 * 1.1
这将很好地工作。
SELECT * FROM mytable WHERE rating BETWEEN ? * 0.90 AND ? * 1.10
low = min(0, 13 * .9)
high = max(25, 13 * 1.10)
假设最大额定值为25。从那里,它只是基本的低<评级<高的查询逻辑。
这将不会返回。 – hjpotter92 2013-03-22 01:10:31