Eu tenho 2 tabelas onde uma tem informações do conteúdo da página e a outra informações do nome dela (slug) e de seu parentesco.
Uma página tem vários slugs
Eu queria selecionar todos os dados da página na tabela pages e apenas um slug dela usando uma query só...
Tem como?
Eu estou tentando fazer assim:
SELECT DISTINCT pg.*, s.slug
FROM pages AS pg, page_slugs AS s
WHERE s.parent_page_id = 0 AND pg.page_id = s.page_id AND pg.page_type = "category" AND pg.response_forum_id = 0
O problema é que como uma página tem vários slugs, as linhas resultantes ficam todas diferentes por causa do slug e as páginas acabam vindo repetidas...
Se eu tirar o s.slug da sql ela funciona, só que sem o slug ^^
A única forma de resolver isso que eu conheço é fazendo uma subquery:
SELECT DISTINCT pg.*, (SELECT s2.slug FROM page_slugs AS s2 WHERE s2.page_id = s.page_id AND s2.parent_page_id = s.parent_page_id LIMIT 1 ) AS slug
FROM pages AS pg, page_slugs AS s
WHERE s.parent_page_id = 0 AND pg.page_id = s.page_id AND pg.page_type = "category" AND pg.response_forum_id = 0
Mas eu não sei se esta é a melhor maneira :mellow:
Pergunta
jose.rob.jr
Eu tenho 2 tabelas onde uma tem informações do conteúdo da página e a outra informações do nome dela (slug) e de seu parentesco.
Uma página tem vários slugs
Eu queria selecionar todos os dados da página na tabela pages e apenas um slug dela usando uma query só...
Tem como?
Eu estou tentando fazer assim:
O problema é que como uma página tem vários slugs, as linhas resultantes ficam todas diferentes por causa do slug e as páginas acabam vindo repetidas... Se eu tirar o s.slug da sql ela funciona, só que sem o slug ^^ A única forma de resolver isso que eu conheço é fazendo uma subquery:Mas eu não sei se esta é a melhor maneira :mellow:
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados