Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - Performance SQL
Forum - PHP - Performance SQL

Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 16:31
Mercoledì, 24/11/2010
Io ho 2 tabelle mysql innodb che dovranno contenere tanti tanti records:

la prima, account, è composta da:
id int
displayname varchar

la seconda è notifiche composta da:
id
account_id
account_id2
nota

Visto che voglio trovare la soluzione che carichi il meno possibile il server e visto che non riesco a trovare nessuna guida/discussione/articolo che discuta quale sia la soluzione più efficiente e il suo perché ho pensato di chiedere alla community.

Quindi, è meglio fare una query unica come:

Codice sorgente - presumibilmente PHP

  1. SELECT n.*, a.displayname from notifiche n, account a where n.account_id=1 and ( n.account_id2=a.id )



oppure fare una semplice query come
Codice sorgente - presumibilmente PHP

  1. SELECT * from notifiche where account_id=1


per poi estrapolare gli id presenti account_id2 ( dove ci saranno molti doppioni ) e fare una query successiva come:
Codice sorgente - presumibilmente Php

  1. SELECT name FROM account WHERE (id=1) OR (id=2) OR (id=3) OR...



Grazie mille per le risposte!

PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 21:21
Giovedì, 25/11/2010
cos'é account_id2??

Perché mi suona strano....magari si può seplificare il tutto modificando la struttura del db. E proprio necessario quel campo?


"There's no point in being exact about something if you don't even know what you're talking about."

JOHN VON NEUMANN


Siamo italiani NO??
Allora scriviamo in ITALIANO!!!!
PM Quote
Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 22:56
Mercoledì, 08/12/2010
account_id2 è il target, il secondo account che subisce l'azione in pratica...


Devo capire se è più performante fare query con JOIN ( o comunque che prendono più tabelle come sorgente di dati ) o fare più query semplificate...

PM Quote