Array
(
)

Dificuldade com views e tabelas virtuais

Eder Borges
   - 23 mai 2010

Estou com 2 dúvidas em sql há tempos, não consigo achar uma solução.
A primeira dúvida é a seguinte:

    -Preciso criar uma View e nela inserir uma nova primary key numerando os resultados.
EX: O resultado da view q eu consigo criar é assim :

ID_EVENTO  |  TITULO  |  DATA  |  DETALHES
    12                    xxxxxxx      xxxxxx    xxxxxxxxx
    18                    xxxxxxx      xxxxxx    xxxxxxxxx
    21                    xxxxxxx      xxxxxx    xxxxxxxxx
    56                    xxxxxxx      xxxxxx    xxxxxxxxx

Preciso que fique assim:

ID_NUMERACAO  |  ID_EVENTO  |  TITULO  |  DATA  |  DETALHES
               1                       12                    xxxxxxx      xxxxxx    xxxxxxxxx
               2                       18                    xxxxxxx      xxxxxx    xxxxxxxxx
               3                       21                    xxxxxxx      xxxxxx    xxxxxxxxx
               4                       56                    xxxxxxx      xxxxxx    xxxxxxxxx

A outra dúvida, é :
    - Preciso criar uma tabela virtual a partir de um Select, para poder fazer outro Select sobre ela. E inserir nesta tabela a mesma ID_NUMERACAO do problema anterior.

Desde já agradeço!

Emerson
   - 24 mai 2010

qual a versão do MSSQL?

Eder Borges
   - 24 mai 2010

Na verdade é o Mysql 5.1 do UolHost.

Jair A.n.
   - 24 mai 2010

Em sua VIEW se fosse em SQLServer 2005 eu utilizaria  mas no MySQL não sei se tem esta função de Racking
Na seleção da sua VIEW

SELECT ...
, ROW_NUMBER() OVER (ORDER BY id_evento ASC) AS id_numeracao
FROM ...

Emerson
   - 24 mai 2010

você pode publicar a sua instrução? porque acho que utilizando joins dá pra fazer...

Eder Borges
   - 25 mai 2010


   Parece que em MySQL não funciona mesmo. Executei o comando e ele retornou:
"#1305 - FUNCTION ROW_NUMBER does not exist"

Quando vou criar a view, o Gerenciador de BD do UOL cria a seguinte instrução, depois que eu insiro os campos e restrições que quero:

CREATE ALGORITHM