Место в талице mysql
Имеется таблица mysql с колонками:
1. id записи
2. сама запись
3. рейтинг записи (числовое значение)
Какой запрос надо сделать чтоб узнать на каком по счету месте стоит нужная мне запись (id), если отсортировать по рейтингу?
Предположим нас интересует запись с id = 8
сначала нужно узнать рейтинг вашей записи:
$id=8;
$raiting = $inDB->get_field('cms_content', "id=$id", 'raiting');
зная рейтинг, делаем такой запрос:
$sql = "SELECT * FROM cms_content WHERE raiting >= '$raiting' ORDER BY raiting DESC";
$result = $inDB->query($sql);
Данный запрос возьмёт из базы (для примера исп таблица cms_content) все строки с рейтингом больше вашей и включая вашу. Причём ваша строка будет последней, так как её рейтинг будет самым маленьким в этой выборке.
Следовательно, количество записей в этой выборке и будет тем числом, которое вы ищите.
Узнать его можно так:
$nomer = $inDB->num_rows($result)