[gl-como] Chat system

Gianni Carabelli giannicarabelli@gmail.com
Ven 17 Apr 2015 14:52:09 CEST


 04/17/2015 01:57 PM, Mpuppeteer wrote:
> Comunque la query deve restituirmi la lista dell'ultimo messaggo di ogni
> conversazione ( One to One ) di un utente


Il tuo created_in va a pari passo con l'autoincrement, quindi lo toglierei.

Puoi inoltre prendere spunto da qualcosa di simile.
Nei forum ci sono i post e i thread. Al pari dei tuoi messaggi e
discussioni. Sempre di one to many parliamo.

In vbulletin per esempio, all'interno del thread si memorizza il
lastpostid proprio per ovviare al problema.

Quindi potresti aggiungere un campo e tutto diventa più semplice:


select * from post join
	(select lastpostid,t.threadid
		from post p
		join thread t on t.threadid = p.threadid
	where userid=2258662 ) a
where  a.lastpostid = post.postid;


Che contiene ancora una subquery, quindi quella roba va a finire in
memoria di mysql...."finchè buffersize regge".

Oppure puoi scindere e fare due query..."finchè memory_limit regge"


JohnnyRun





Maggiori informazioni sulla lista gl-como