Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Порядковый номер строки в выборке. (Terraneous) 09/01/2006 - 14:27:54
      Re: Порядковый номер строки в выборке. (Dinky) 09/01/2006 - 18:49:37
      Re: Порядковый номер строки в выборке. (Terraneous) 11/01/2006 - 06:01:09
      Re: Порядковый номер строки в выборке. (Dinky) 11/01/2006 - 19:20:52
      Re: Порядковый номер строки в выборке. (Terraneous) 13/01/2006 - 12:45:46
      Re: Порядковый номер строки в выборке. (Dinky) 13/01/2006 - 19:12:08
      Re: как заполнить поле порядковыми номерами (bfg) 24/03/2006 - 14:08:45
      Re: Порядковый номер строки в выборке. (Temp1ar) 22/12/2008 - 14:57:34
      Re: Порядковый номер строки в выборке. (Golf) 02/03/2009 - 01:51:55
      Re: Порядковый номер строки в выборке. (Kio) 27/01/2010 - 20:22:37
      Re: Порядковый номер строки в выборке. (манвел) 27/04/2010 - 19:03:00

> Original message text:
> From: Terraneous - 09/01/2006 - 14:27:54
> Subject:Порядковый номер строки в выборке.
> -----------------
> Здравствуйте.
>
> Как определить порядковый номер строки в выборке по какому-нибудь из полей выборке.
>
> Есть такая таблица:
> drop table if exists test;
> create table test (id int(11));
>
> insert into test (id) values ('22');
> insert into test (id) values ('23');
> insert into test (id) values ('18');
> insert into test (id) values ('14');
> insert into test (id) values ('15');
> insert into test (id) values ('16');
> insert into test (id) values ('19');
> insert into test (id) values ('20');
>
> Делаю выборку:
> SET @v1 := 0;
> select @v1:=(@v1+1) AS num, id from test;
>
> Но необходимо не просто пронумеровать строки в выборки, а определить порядковый номер определенного ID. Для этого я использую такой запрос:
>
> SET @v1 := 0;
> select distinct if((@v1:=(@v1+1))&&(id=14), @v1, NULL) AS id from test;
>
> Вопрос: Может быть, есть боле элегантный способ?
>
> Заранее благодарю.
>


From: Kio - 27/01/2010 - 20:22:37
Subject:Порядковый номер строки в выборке.
-----------------
Столкнулся с такой же проблемой. И вот что удалось придумать, после дня неимоверных мучений:

set @P:=0;

select *,@P:=@P+1 position
from
(select id from test order by id) new_test
having id=14;

Вот и все дела, умники и супер-спецы!


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
37073



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |