PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como posso me juntar a uma tabela derivada?


O autor da pergunta precisa ler sobre o Rails básico e o uso do activerecord antes de entrar no SQL. Precisa entender como o Activerecord modela seus dados e como usá-los. Primeiro descubra o que você quer fazer em linguagem comum e depois veja como você pode usar o que existe para fazer isso.

Rails não conhece a estrutura da sua tabela @temp. Ele só tem um conjunto de resultados e, pelo que entendi, o AREL não constrói lógica a partir do conjunto de resultados. Ele é construído a partir de esquemas que ele extrai para modelos de registro ativo.

Você não pode construir uma visão a partir desses dados, então sua única opção é usar as opções de junção padrão com classes activerecord ou fazer sql personalizado.

No Rails 3, a álgebra relacional ActiveRecord é muito avançada e facilitou muito as consultas.

Comment.order("#{Comment.table_name}.created_at desc').limit(5).joins(:posts).order("#{Post.table_name} created_at desc")