Dúvida em Select (MySql)

Pessoal, estou precisando de ajuda para montar um comando SELECT do MySql que faça o seguinte:

Eu possuo 3 tabelas, uma chamada ‘peça’, outra, ‘ato’, e outra, ‘cena’. Uma peça possui vários atos e um ato possui várias cenas.

peca:
id_peca

ato:
id_ato int
id_peca int

cena:
id_cena int
id_ato int
descricao varchar(250)

Bem, o meu problema é que preciso de uma query que busque todos os atos de uma peça e, como retorno, traga não apenas os atos em ordem crescente pelos ids, mas também uma outra coluna númerando-os de 0 à n (onde n é a quantia de atos).
Algo mais ou menos assim:

id_ato | numero
203 | 0
204 | 1
205 | 2
… | …
… | …
ato final| n

Obs: podem haver outros atos que não pertençam à peça entre os id de 2 atos que pertençam. Exemplo: ato 203 pertence à peça x, 204 à y, 205 à x, etc.

Queria saber se é possível, após esta busca, realizar uma nova sobre seus resultados. Exemplo: eu quero encontrar o ato 3 da peça P, realizo o select, procuro pelo que possuir o numero 3 e utilizo seu id_ato para, por exemplo, retornar suas cenas.

Agradeço desde já

A parte que numera as linhas, você pode fazer assim

select a.*, @rownum:=@rownum+1 rownum
from ato a, (SELECT @rownum:=0) r
where a.idPeca = 2 

Vlw romarcio