0

MySQL データベースに次のようなテーブルがあります。

   username   rating
1  xxxxxxxx     -1
2  xxxxxxxx      5
3  xxxxxxxx      14
4  xxxxxxxx      23
5  xxxxxxxx      12

与えられた値、たとえば 13 がある場合、評価が 13 のいずれかの方法で 10% 以内にあるすべての行を返すにはどうすればよいでしょうか?

4

3 に答える 3

4
SELECT *
FROM `tblName`
WHERE `rating` BETWEEN 13 * 0.9 AND 13 * 1.1

それは完全に機能します。

于 2013-03-22T01:04:14.817 に答える
3
SELECT * FROM mytable WHERE rating BETWEEN ? * 0.90 AND ? * 1.10
于 2013-03-22T01:04:07.803 に答える
0
low = min(0, 13 * .9)
high = max(25, 13 * 1.10)

最大評価が25であると仮定します。そこからは、基本的な低<評価<高のクエリロジックです。

于 2013-03-22T01:05:14.850 に答える