Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

diasgabrie

group by complexo

Recommended Posts

olá gente

 

estou fazendo um sistema em php, onde cada usuario possui uma tabela de amigos.

 

tenho duas tabelas:

 

CODE
CREATE TABLE `favoritos` (

`id` INT NOT NULL AUTO_INCREMENT ,

`user` VARCHAR( 50 ) NOT NULL ,

`add` VARCHAR( 50 ) NOT NULL ,

PRIMARY KEY ( `id` )

 

);

 

user é quem adicionou nos favoritos

add o adicionado.

 

 

CODE
CREATE TABLE `posts` (

`id` INT NOT NULL AUTO_INCREMENT ,

`user` VARCHAR( 40 ) NOT NULL ,

`comentario` VARCHAR( 3000 ),

PRIMARY KEY ( `id` )

 

);

 

quero ordenar os favoritos por ordem de post, quem postou por ultimo vai pro topo. sem repetir o sujeito que postou, por isso GROUP BY

 

se eu der:

 

 

CODE
SELECT a.user, a.add, p.id, p.user

FROM favoritos a

INNER JOIN posts p ON a.add = p.user

WHERE a.user = 'joao'

GROUP BY a.add

ORDER BY p.id DESC

 

ira mostrar:

 

CODE
user add id user

 

JOÃO maria 6 maria

JOÃO benedita 1 benedita

 

ou seja, esta ordernando pelo primeiro post de cada usuario

eu queria ordernando pelo ultimo, como poderia fazer?

 

 

para ilustrar melhor:

 

sem o group by a tabela esta assim:

 

CODE
user add id user

JOÃO benedita 25 benedita

JOÃO benedita 20 benedita

JOÃO maria 19 maria

JOÃO maria 12 maria

JOÃO maria 11 maria

JOÃO maria 9 maria

JOÃO maria 8 maria

JOÃO maria 7 maria

JOÃO maria 6 maria

JOÃO benedita 3 benedita

JOÃO benedita 2 benedita

nady benedita 1 benedita

 

> queria mostrar: <

 

CODE
user add id user

 

JOÃO benedita 25 benedita

JOÃO maria 19 maria

 

obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.