Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Номер строки в запросе.
 
 автор: kailDeSazerland   (18.11.2008 в 08:51)   письмо автору
 
 

Необходимо определить номер строки в запросе.
Имеется определееныый запрос на выборку, надо определить номер строки, в которой находятся определенные данные, определяемые по условию

  Ответить  
 
 автор: Valick   (18.11.2008 в 09:22)   письмо автору
 
   для: kailDeSazerland   (18.11.2008 в 08:51)
 

что бы составить запрос, нужна структура таблицы, название полей и эти самые определяемые условия.
Номер строки, это вобычно первичный ключь ID поэтому в цикле вывода полученного результата, после выполнения запроса, достаточно написать

echo tablename['ID'];

  Ответить  
 
 автор: kailDeSazerland   (18.11.2008 в 09:40)   письмо автору
 
   для: Valick   (18.11.2008 в 09:22)
 

Это необходимо сделать без помощи PHP, а средствами MySQL. В таблице огромное количество записей, что цикл просто убьёт скрипт.

  Ответить  
 
 автор: sim5   (18.11.2008 в 09:46)   письмо автору
 
   для: kailDeSazerland   (18.11.2008 в 09:40)
 

Вы сами то хоть поняли, что сказали? Если у вас в таблице есть поле, например, myfld, и в нем запись "бублики", и эта запись имеет номер 2, например, то кто вам мешает сделать MySQL запрос для WHERE myfld = 'бублики' и получить 2 ?

  Ответить  
 
 автор: kailDeSazerland   (18.11.2008 в 10:28)   письмо автору
 
   для: sim5   (18.11.2008 в 09:46)
 

Нужен не id записа, а номер строки, в котором находится эта запись - это разные вещи.

  Ответить  
 
 автор: sim5   (18.11.2008 в 10:33)   письмо автору
 
   для: kailDeSazerland   (18.11.2008 в 10:28)
 

Ну если у вас записи не нумерованы, то вы ничего и никогда, и не получите. Записи в базе лежат не чинным порядком, а как "бог на душу положил", нумеровать это ваша забота. А уж как вы будете номера дразнить, хоть id, хоть num, это уже не важно.

  Ответить  
 
 автор: Valick   (18.11.2008 в 10:50)   письмо автору
 
   для: kailDeSazerland   (18.11.2008 в 10:28)
 

если id первой строки равно 1
а id второй строки равно 15 (потому что строки 2-14 были удалены), и в этой строке содержится нужный запрос, то вам нужно получить в результате 2?

  Ответить  
 
 автор: kailDeSazerland   (18.11.2008 в 11:34)   письмо автору
 
   для: Valick   (18.11.2008 в 10:50)
 

Совершенно верно

  Ответить  
 
 автор: serjinio   (21.11.2008 в 20:35)   письмо автору
 
   для: kailDeSazerland   (18.11.2008 в 11:34)
 

приблизительно так...насвкидку....

<?php 
$id
=15;
$rs=mysql_query("SELECT id,name FROM test",$db);
$i 1;
while (
$rwr mysql_fetch_assoc($rs)) 
{
if (
$id == $rwr ['id']) 
{
/////
$stroka=intval($i);
echo 
'<br>'.$rwr ['name'].' c id ='.$id.'находится в '.$stroka.' строке при сортировки по умолчанию';
break;
}
$i++;
}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования