2010-05-13 9 views
1

У меня есть несколько данных s в базе MySQL. В моей таблице есть столбец под названием rank. то, что я хочу, когда кто-то входит в ранг, скажем 25, тогда результат должен отображать имена на аналогичных (+ или -) рангах LIMIT до 10 из таблицы.выбрать аналогичные значения из базы данных mysql

пример

mathew - 25 
john - 26 
joe - 25 
stewart - 27 
kelly - 24 
brandon -23 
magy - 22 .......etc. 

Благодаря Мэтью

ответ

5

Вы можете использовать between и limit пункта в MySQL для этого:

$range = 5; // you'll be selecting around this range. 
$min = $rank - $range; 
$max = $rank + $range; 
$limit = 10; // max number of results you want. 

$query = "select * from table where rank between $min and $max limit $limit"; 
+0

как Я заказываю этот результат ?? – mathew

0

выбрать данные из таблицы, где ранг> = 25 LIMIT 0,10

0

вы можете использовать BETWEEN:

SELECT * 
    FROM `table` 
WHERE `rank` BETWEEN $input-5 AND $input+5 
LIMIT 10 

конечно убедитесь, что вы вводите данные, проверены/дезинфицированы или используйте . приведенный выше код псевдокод, чтобы объяснить, как вы могли бы сделать это зависит от конкретного языка (кроме SQL части;))

Смежные вопросы